hbase rest api多个插入

9nvpjoqh  于 2021-06-09  发布在  Hbase
关注(0)|答案(1)|浏览(389)

我们计划使用hbase restapi执行对hbase表的插入,并想知道是否有一种方法可以在单个调用中将多个列插入到单个列族或甚至多个列族中。
如果没有,因为我们计划为一个特定的记录(行)插入大约100多个列,这将导致我们对一个行条目进行100多个调用

pxy2qtax

pxy2qtax1#

可以在单个put操作中为单个/多个列族插入多个列。 --data 有效载荷包含 key 以及 CellSet ,cellset包含的base64编码值 cf:columnname 以及 $ 包含列值的base64编码值。
例如:

{ "Row":[
      {
         "key":"d3d3LnNvbWVzaXRlLmNvbQ==",
         "Cell":[
            {
               "column":"QXV0aG9yczp0ZXN0MQ==",  // It can be cf1:name
               "$":"c29tZURhdGE="
            },
            {
               "column":"QXV0aG9yczp0ZXN0Mg==", // It can be cf2:address
               "$":"bW9yZURhdGE="
            }
         ]
      }
   ]
}

最后的curl命令如下所示:

curl -vi -X PUT \
         -H "Accept: text/json" \
         -H "Content-Type: text/json" \
         -d '{"Row":[{"key":"d3d3LnNvbWVzaXRlLmNvbQ==","Cell":[{"column":"QXV0aG9yczp0ZXN0MQ==","$":"c29tZURhdGE="},{"column":"QXV0aG9yczp0ZXN0Mg==","$":"bW9yZURhdGE="}]}]}' \
         "localhost:20550/table/rowkey"

相关问题