Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/321.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在python中导入hbase?_Python_Hbase_Cloudera - Fatal编程技术网

如何在python中导入hbase?

如何在python中导入hbase?,python,hbase,cloudera,Python,Hbase,Cloudera,我试图在python中使用hbase,并使用cloudera存储库安装hadoop/hbase软件包。它似乎可以工作,因为我可以使用shell访问和处理数据库,但它不能在python中完全工作 我知道要与hbase通信,我需要thrift,所以我从源代码下载并编译了它,我可以将thrift导入python,但当我从hbase导入hbase时,我发现模块未找到错误 有人知道我需要什么软件包/模块才能让它工作吗?我试着环顾一下easy_install和yum(我使用的是centos6),但运气不好。

我试图在python中使用hbase,并使用cloudera存储库安装hadoop/hbase软件包。它似乎可以工作,因为我可以使用shell访问和处理数据库,但它不能在python中完全工作

我知道要与hbase通信,我需要thrift,所以我从源代码下载并编译了它,我可以将thrift导入python,但当我从hbase导入hbase时,我发现模块未找到错误

有人知道我需要什么软件包/模块才能让它工作吗?我试着环顾一下easy_install和yum(我使用的是centos6),但运气不好。我确实找到一篇文章,其中一位使用debain的人通过执行
sudoapitude install python hbase安装了它,我没有这个命令/包,所以我不确定如何获取它(或者如果我必须从源代码编译才能获得它)

另外,如果有帮助的话,我从cloudera安装了大部分base,并按照cloudera的一些说明(不需要安装的说明)进行了安装

任何帮助/提示/建议都很好


谢谢

好吧,我知道了。如果将来有其他人对此有问题,其实很容易。在运行
thrift--gen py Hbase.thrift
的步骤中,它会在运行该命令的位置创建一个Hbase文件夹。只需使用该命令并将其复制到默认的模块文件夹中(或在运行程序的文件夹中,它应该可以工作)。

查看HappyBase(有关信息,请参阅)。这是从Python与HBase交互的现代方式。它涵盖了完整的Thrift API,但将其封装在更好的接口中

  • 在hadoop安装文件夹下搜索/src/contrib/thriftfs/gen py
  • 将thrift--gen py Hbase.thrif的输出复制到下面的位置(part-till/home/hadoop/data/在您的情况下会有所不同)/home/hadoop/data/hadoop-1.0.4/src/contrib/thriftfs/gen-py
  • 然后


    现在应该可以用了。

    fyi.我用的那篇文章差不多有4年了。我找不到任何更新的python处理方法,但是如果这个方法已经过时,请告诉我。欢迎使用堆栈溢出!谢谢你的帖子!请勿在帖子中使用签名/标语。您的用户框算作您的签名,您可以使用您的个人资料发布您喜欢的任何关于您自己的信息。
    $ python
    import sys
    sys.path.append("/home/hadoop/data/hadoop-1.0.4/src/contrib/thriftfs/gen-py")
    import hbase