【问题标题】:Hbase rest api multiple insertsHbase rest api 多次插入
【发布时间】:2019-07-07 17:59:41
【问题描述】:

我们计划使用 hbase rest api 对 hbase 表执行插入操作,并想知道是否有办法将多个列插入单个列族,甚至在一次调用中插入多个列族。

如果不是,因为我们计划为特定记录(行)插入大约 100 多列,这将导致我们对单个行条目进行 100 多次调用

【问题讨论】:

    标签: hbase hbasestorage hbase-client


    【解决方案1】:

    您可以在单个 PUT 操作中为单个/多个列族插入多个列。 --data载荷包含keyCellSet,CellSet包含cf:columnname的base64编码值,$包含列值的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"
    

    【讨论】:

      猜你喜欢
      • 2012-06-10
      • 2012-04-17
      • 1970-01-01
      • 2012-12-01
      • 1970-01-01
      • 2017-08-24
      • 2013-01-14
      • 2018-08-07
      • 1970-01-01
      相关资源
      最近更新 更多