HBase REST API-数据问题、浏览器问题、不可用和#x27;好像不行

HBase REST API-数据问题、浏览器问题、不可用和#x27;好像不行,hbase,Hbase,​我正在处理一些与HBase REST API相关的问题 让我先给大家介绍一下背景: 我在公司的CDH集群中构建了一个HBase表。行键为“|”。列族是“d”,列限定符是日期,也是字符串(例如,2012-01-27)。为了向公司中其他感兴趣的人提供对表数据的访问,我构建了一个DjangoAPI,它工作得非常好。我的团队中有人建议Hbase自带一个内置API,我可以直接使用它来访问数据。我阅读了在线HBase文档,看起来HBase已经有现成的东西了。但我还没有成功地使用它,因此我在这里寻求帮助 以

​我正在处理一些与HBase REST API相关的问题

让我先给大家介绍一下背景: 我在公司的CDH集群中构建了一个HBase表。行键为“|”。列族是“d”,列限定符是日期,也是字符串(例如,2012-01-27)。为了向公司中其他感兴趣的人提供对表数据的访问,我构建了一个DjangoAPI,它工作得非常好。我的团队中有人建议Hbase自带一个内置API,我可以直接使用它来访问数据。我阅读了在线HBase文档,看起来HBase已经有现成的东西了。但我还没有成功地使用它,因此我在这里寻求帮助

以下是我正在处理的问题列表:

  • 浏览器 在Chrome浏览器中,我输入了以下url: http://:20550/名称空间:tablename/#00003 | 313001098/d 我希望它能够在浏览器中呈现特定于所提供的行键的数据,但它下载的html文件只包含一个列限定符的数据,并且不包含数据所属的列限定符的任何信息

  • 卷曲 我在unixshell中对curl命令也做了同样的操作。 curl-i http://:20550/名称空间:tablename/%2300003%7C313001098/d 请注意%23是#的编码,%7C是|(管道)的编码。 上面的命令只提供一个列限定符的数据

  • 我使用HBase shell使用以下命令仔细检查了我的数据:

     get 'namespace:tablename', '#00003|313001098'
    
    我从多个列限定符中获取数据。因此,我可以确认我遗漏了什么,或者HBase内置API不是为完成我试图完成的任务而构建的


    提前感谢。

    您需要指定所需的确切列。RESTAPI似乎不允许您获取超过1列

    如果您在此链接中参考表14:-,您将看到以下端点已公开以使用Hbase Rest API执行get操作:-

    1) /table/row/column:限定符/时间戳

    2) /table/row/column:限定符

    3) /table/row/column:qualifier/?v=版本数

    所有这些都需要一个列:限定符

    您的查询需要采用以下格式:-

    http://:20550/名称空间:tablename/#00003 | 313001098/d:20160202