当尝试连接到hbase时,starbase提供405

时间:2014-03-06 15:52:01

标签: python hbase

我正在尝试通过REST API读取和写入hbase,我在端口8085上运行它(可以在XXXXX上看到它:8085 / rest.jsp)

我已经让这个脚本进行测试了,它给了我405(我认为这是“方法不允许”但我不确定):

#!/usr/bin/env python

from starbase import Connection
from socket import gethostname

hostname = gethostname()

print "hostname: %r" % hostname

con = Connection(host=hostname, port=8085)

print con.tables()

我认为我的先决条件存在问题,但我也不确定,也许有经验丰富的人可以提供帮助。

是否有更好的解决方案来连接hbase和python?

感谢。

1 个答案:

答案 0 :(得分:1)

starbase适用于StarGate http://wiki.apache.org/hadoop/Hbase/StargateStargate默认在端口8000上运行。如果StarGate正在运行,您应该只需访问XXXXX:8000(在您的情况下为8085)即可查看表列表。如果您没有看到,那么您可能正在运行REST API的旧版本和弃用版本。

您可以尝试Apache Thrift框架http://thrift.apache.orghappybase(基于Apache Thrift框架)https://github.com/wbolster/happybase

Apache Thrift比REST API快得多。