Hbase学习:使用C#通过Thrift来对Hbase进行访问
2013-01-25 14:57
603 查看
准备工作:
下载 Thrift compiler for Windows版本的EXE文件(thrift-0.7.0.exe)
下载 SVN源码地址:http://svn.apache.org/repos/asf/thrift/attic/trunk/lib/csharp/ (使用svn来下载)
1.将 hbase-0.94.4\src\main\resources\org\apache\hadoop\hbase\thrift2\hbase.thrift 到 thrift-0.7.0.exe 相同目录下
进入命令行,到 thrift-0.7.0.exe 目录下
执行 thrift-0.7.0.exe -gen csharp hbase.thrift
会生成gen-csharp文件夹,里面是thrift接口实现的类
2使用svn获取源码(主要为了生成Thrift.dll,也方面查看code),在src里面提取Thrift项目
3新建项目 ThriftHbaseCommon加入刚才生成的代码,也将svn上的Thrift项目加入
4编写访问集群的Hbase代码(当然你的集群及hbase应该是OK的)
需要注意的是,你要启动对应IP的Thrift服务,命令为:hbase-daemon.sh start thrift
下载 Thrift compiler for Windows版本的EXE文件(thrift-0.7.0.exe)
下载 SVN源码地址:http://svn.apache.org/repos/asf/thrift/attic/trunk/lib/csharp/ (使用svn来下载)
1.将 hbase-0.94.4\src\main\resources\org\apache\hadoop\hbase\thrift2\hbase.thrift 到 thrift-0.7.0.exe 相同目录下
进入命令行,到 thrift-0.7.0.exe 目录下
执行 thrift-0.7.0.exe -gen csharp hbase.thrift
会生成gen-csharp文件夹,里面是thrift接口实现的类
2使用svn获取源码(主要为了生成Thrift.dll,也方面查看code),在src里面提取Thrift项目
3新建项目 ThriftHbaseCommon加入刚才生成的代码,也将svn上的Thrift项目加入
4编写访问集群的Hbase代码(当然你的集群及hbase应该是OK的)
TTransport transport = new TSocket("IP", 9090); TProtocol tProtocol = new TBinaryProtocol(transport); var client = new Hbase.Client(tProtocol); transport.Open(); List<TRowResult> reslut= client.getRow(Encoding.UTF8.GetBytes("TableName"),Encoding.UTF8.GetBytes("Rows.key"),null); foreach (var key in reslut) { Console.WriteLine(Encoding.UTF8.GetString(key.Row)); foreach (var k in key.Columns) { Console.Write(Encoding.UTF8.GetString(k.Key)+"\t"); Console.WriteLine(Encoding.UTF8.GetString(k.Value.Value)); } } Console.ReadLine();
需要注意的是,你要启动对应IP的Thrift服务,命令为:hbase-daemon.sh start thrift
相关文章推荐
- 使用C#通过Thrift访问HBase
- 使用C#和Thrift来访问Hbase实例
- 通过thrift使用PHP访问Hbase
- 使用C#和Thrift来访问Hbase实例
- 使用C++(通过Thrift)访问/操作/读写Hbase
- 使用Python通过Thrift接口访问HBase和Hive
- 用C#和Thrift来对Hbase进行访问
- 使用C#和Thrift来访问Hbase实例
- 使用C++(通过Thrift)访问/操作/读写Hbase
- 使用C++(通过Thrift)访问/操作/读写Hbase
- 在.NET平台下使用C#通过Thrift访问Cassandra
- 使用C++(通过Thrift)访问/操作/读写Hbase
- 在windows7上,使用python通过thrift访问hbase
- 通过URL,使用HttpURLConnection进行请求/响应,访问web服务器图片等资源。异常报错
- 使用UAParser在C#MVC项目中如何判断用户是在用什么设备进行访问(手机,平板还是普通的电脑)
- Entity Framework 上下文在C#事务中间使用时,通过递归方法引入新构造的上下文访问入口导致错误
- !!c# 委托与多线程 -- 相比background来说,本方法针对当需要通过异步代理发起UI操作,而后线程中进行sleep操作的时使用
- Apache2.4使用require指令进行访问控制--允许或限制IP访问/通过User-Agent禁止不友好网络爬虫 从Apache2.2升级到Apache2.4后,发现原来用来限制部分I
- 使用thrift进行跨语言调用(php c# java)
- 不使用反射进行C#属性的运行时动态访问