当前位置:首页 > 开发 > 互联网 > 正文

Thrift安装中出现的问题(For HBase)

发表于: 2012-09-06   作者:chenchao051   来源:转载   浏览次数:
摘要: 安装巨简单: 进入thrift根目录 ./configure --> ./make --> make install   为了在某些简单环境下,决定采用python来访问hbase   1、在make的时候出现fatal error: Python.h: No such file or directory的错误: 答:没有安装python-de

安装巨简单:

进入thrift根目录 ./configure --> ./make --> make install

 

为了在某些简单环境下,决定采用python来访问hbase

 

1、在make的时候出现fatal error: Python.h: No such file or directory的错误:

答:没有安装python-dev的包,运行sudo apt-get install python-dev 即可

 

2、提示找不到各种包

答:运行完

thrift --gen py /src/main/resources/org/apache/hadoop/hbase/thrift/Hbase.thrift  

会出现gen-py,需要把里面的hbase文件夹拷到/usr/lib/python2.7/dist-packages目录下

此外,需要把

thrift-0.6.1/lib/py/build/lib.linux-x86_64-2.7/thrift拷到/usr/lib/python2.7/dist-packages

(以上是在ubuntu中的测试,在suse中,需放入/usr/local/lib/python2.7/site-packages下才有效)

 

当然,你也可以直接用ln -s 做个软连接

或者不放在上述system lib级别的目录中,用sys.path.append也行, 要想永久有效的话,就把append语句放在PYTHONPATH中

 

3、IDE还是会报找不到包

答:这个就比较诡异了,没关系,我建议你关闭ide,再打开。我用的是Aptana Studio 3

 

 

--------------------有问题再继续------------------

这边顺便提一个在用python基于stream写MR程序的时候,有时会出现问题,需要在开头加上:

#!/usr/bin/env python

关于python写MR,推荐一篇文章,简单,详细 http://www.michael-noll.com/tutorials/writing-an-hadoop-mapreduce-program-in-python/

 

thrift访问中的问题:

1、二进制问题

   需要使用binascii模块进行转

   

import binascii  
  
bin = lambda n:(n > 0) and (bin(n/2) + str(n%2)) or ''  
  
s = 'hello world,this is python'  
s_16 = binascii.b2a_hex(s)  
s_10 = int(s_16,16)  
s_2 = bin(s_10)  
print s_2  
  
s_10 = int(s_2,2)  
s_16 = '%x'%(s_10)  
s = binascii.a2b_hex(s_16)  
print s 

 

代码引自http://iyuan.iteye.com/blog/1226791

 

 

Thrift安装中出现的问题(For HBase)

  • 0

    开心

    开心

  • 0

    板砖

    板砖

  • 0

    感动

    感动

  • 0

    有用

    有用

  • 0

    疑问

    疑问

  • 0

    难过

    难过

  • 0

    无聊

    无聊

  • 0

    震惊

    震惊

编辑推荐
启动hbase时错误信息如下: 发现是版本冲突的问题,但是我之前处理过冲突(已经做了hadoop-core-1.2
前言 HBase是Hadoop家族中的一个分布式数据库产品,HBase支持高并发读写,列式数据存储,高效的索引
1. Thrift框架 Thrift是Facebook开源出来的通信服务框架,典型的C/S架构模式,支持跨语言编程,例如
HBase Thrift 接口的一些使用问题及相关注意事项 这里结合对HBase Thrift接口(HBase版本为0.92.1)
最近这段时间因为工作需要安装了hadoop+hbase集群,在安装的过程中总结了以下一些常见的问题,供大
最近这段时间因为工作需要安装了hadoop+hbase集群,在安装的过程中总结了以下一些常见的问题,供大
cp -r hbase/ /usr/lib/python2.7/site-packages/ 官方示例子 http://code.google.com/p/hbase-thri
题外话:C# 调用 Java 的几种方法 1.将Java端的接口通过WebService方式发布,C#可以方便的调用 2.先
题外话:C# 调用 Java 的几种方法 1.将Java端的接口通过WebService方式发布,C#可以方便的调用 2.先
题外话:C# 调用 Java 的几种方法 1.将Java端的接口通过WebService方式发布,C#可以方便的调用 2.先
版权所有 IT知识库 CopyRight © 2009-2015 IT知识库 IT610.com , All Rights Reserved. 京ICP备09083238号