用C#和Thrift来对Hbase进行访问
2015-06-15 21:06
453 查看
下载 thrift-0.9.2.exe
下载 SVN源码地址:http://svn.apache.org/repos/asf/thrift/attic/trunk/lib/csharp/
1.将 hbase-0.94.4\src\main\resources\org\apache\hadoop\hbase\thrift2\hbase.thrift 到 thrift-0.7.0.exe 相同目录下
进入命令行,到 thrift-0.9.2.exe 目录下执行 thrift-0.9.2.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-0.9.2.exe
下载 SVN源码地址:http://svn.apache.org/repos/asf/thrift/attic/trunk/lib/csharp/
1.将 hbase-0.94.4\src\main\resources\org\apache\hadoop\hbase\thrift2\hbase.thrift 到 thrift-0.7.0.exe 相同目录下
进入命令行,到 thrift-0.9.2.exe 目录下执行 thrift-0.9.2.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
相关文章推荐
- DEV GridControl小结。。 作者:爱搁浅
- C#高级编程十五天----只读字段
- c# 扩展方法奇思妙用基础:IsBetween 通用扩展
- c# 扩展方法奇思妙用基础:string 常用扩展
- c# 扩展方法奇思妙用基础:WhereIf 扩展
- 关于C#控制台输出中文字符乱码解决方案
- C#事件机制
- C#中一道关于线程同步的练习题——模拟多窗口售票
- WinForm(C#)中MDI子窗体最大化的问题
- C#基础及记忆概念
- C#操作XML(三)
- C# 打印多页tif
- C# 后台服务 web.config 中 项“ConnectionString”已添加。问题
- C#模拟POST登录cnblogs并发布文章
- C#--Web数据分页
- C# Socket SSL通讯笔记
- c#通过属性的名字获取值
- 压缩文本、字节或者文件的压缩辅助类-GZipHelper 欢迎收藏
- C#对图片的操作
- c#FileStream文件读写(转)