标签: stargate

HBase REST过滤器(SingleColumnValueFilter)

我无法弄清楚如何在HBase REST接口(HBase 0.90.4-cdh3u3)中使用过滤器.文档只给我一个"字符串"的模式定义,但没有说明如何使用它.

所以,我能够这样做:

curl -v -H 'Content-Type: text/xml' -d '<Scanner startRow="ddo" stopRow="ddp" batch="1024"/>' 'http://hbasegw:8080/table/scanner'
Run Code Online (Sandbox Code Playgroud)

然后检索

curl -s -H "Content-Type: text/xml" http://hbasegw:8080/table/scanner/13293426893883128482b | tidy -i -q -xml
Run Code Online (Sandbox Code Playgroud)

但是现在我想使用SingleColumnValueFilter并且必须以某种方式在XML中进行编码.有没有人有这方面的例子?

谢谢,马里奥

xml rest hadoop hbase stargate

38
推荐指数
1
解决办法
7581
查看次数

是否有一个很好的库来从Python访问HBase?

我花了一些时间环顾四周,而我所能找到的只是Jython.这是一个选项,但有什么东西可以用更pythonesque(更简单)的方式?

python hadoop hbase stargate

14
推荐指数
2
解决办法
9617
查看次数

通过Ruby查询HBase Stargate的十六进制rowkey

我有一个HBase表(部分)利用十六进制字节来构造其rowkeys.我可以从Hbase Shell查询,如下所示

get 'my_table', "XYZ:\x7F\xFF\xFF\xFF\xFF\xFF\xFF\x82"
Run Code Online (Sandbox Code Playgroud)

但是,我想使用stargate API(或作为包装器的众多ruby gem之一)远程查询hbase.

如果我运行上面完全相同的查询,我找不到404.请注意,:\字符是URL编码的.

curl "http://myHbaseServer.domain:8080/my_table/XYZ%3A%5Cx7F%5CxFF%5CxFF%5CxFF%5CxFF%5CxFF%5CxFF%5Cx82/content:raw"
=> 404 Not Found
Run Code Online (Sandbox Code Playgroud)

我知道这种格式是正确的,因为它只是在调用/端点时返回一个表列表.它也没有引发连接错误.有关这些角色是否被正确转义的任何想法?

谢谢!

ruby url hbase stargate

5
推荐指数
1
解决办法
390
查看次数

如何列出hbase表中的所有行键?

如何列出hbase表中的所有行键?

我需要使用带有REST接口的PHP来做到这一点.

rest hadoop hbase stargate

3
推荐指数
1
解决办法
8754
查看次数

HBASE Rest API(Stargate)发布多个单元格/行

我试图使用其余的api将多个列/行发布到我的hbase集群.我可以一次发布1列没有问题,但似乎无法接受多列/行.

这很好用

数据:

{
   "Row":{
      "@key":"www.somesite.com",
      "Cell":{
         "@column":"ColFam:Col1",
         "$":"someData"
      }
   }
}
Run Code Online (Sandbox Code Playgroud)

呼叫:

curl -v -X PUT -H "Content-Type: application/json" --data '{"Row": { "@key":"www.somesite.com", "Cell": { "@column":"ColFam:Col1", "$":"someData" } } }' http://somesite.com:8080/TestTable/www.somesite.com/ColFam:Col1
Run Code Online (Sandbox Code Playgroud)

根据api,我应该能够同时发布多行/列.

多列数据:

{
   "Row":
      {
         "key":"www.somesite.com",
         "Cell":[
            {
               "column":"ColFam:Col1",
               "$":"someData"
            },
            {
               "column":"ColFam:Col2",
               "$":"moreData"
            }
         ]
      }
}
Run Code Online (Sandbox Code Playgroud)

多行数据:

{
   "Row":[
      {
         "key":"www.somesite.com",
         "Cell":[
            {
               "column":"ColFam:Col1",
               "$":"someData"
            }
         ]
      },
      {
         "key":"www.someothersite.com",
         "Cell":[
            {
               "column":"ColFam:Col1",
               "$":"moreData"
            }
         ]
      }

   ]
}
Run Code Online (Sandbox Code Playgroud)

我尝试使用以下网址:

http://somesite.com:8080/TestTable/www.somesite.com/ColFam:Col1
http://somesite.com:8080/TestTable/www.somesite.com/ColFam
http://somesite.com:8080/TestTable/www.somesite.com
Run Code Online (Sandbox Code Playgroud)

无济于事.文档说使用false-row-key所以我也尝试过: …

hbase stargate

2
推荐指数
1
解决办法
4896
查看次数

标签 统计

hbase ×5

stargate ×5

hadoop ×3

rest ×2

python ×1

ruby ×1

url ×1

xml ×1