sqoop merge此命令可用于hbase导入吗?

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

我使用sqoop将数据从sqlserver导入hbase。我还可以使用sqoop merge命令更新hbase中的数据吗?
谢谢

wf82jlnq

wf82jlnq1#

sqoop merge不支持hbase,但运行新的导入(甚至从其他sql表)将覆盖hbase中的数据。您可以提供一个自定义where+自定义列来更新所需的数据,而不影响已存储在hbase中的其余数据:

sqoop import --connect [CONN_STRING] --username [USERNAME] --password [PASSWORD] \
--table my_mysql_table --hbase-table my_hbase_table --column-family info \
--where "date_updated >= (NOW()-INTERVAL 24 HOUR)" --columns "id, data"

此命令将更新列 info:datamy_hbase_tabledata 每行字段 my_mysql_table 用一个 date_updated 过去24小时范围内的字段(sql server的条件不同)
请注意,您还需要提供符合hbase行键的列( id 在这种情况下),否则它将无法工作。

相关问题