sqoop-merge 这个命令可以用于 hbase 导入吗?

sqoop-merge can this command use on hbase import?

我使用 sqoop 从 sql 服务器导入数据到 hbase。我也可以使用sqoop-merge命令来更新hbase中的数据吗?

谢谢

sqoop-merge 不支持 hbase 但 运行 新导入(甚至来自其他 sql table)将覆盖 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" 

此命令将更新 my_hbase_table 上的列 info:data,其中 my_mysql_table 的每一行的 data 字段最后一个 date_updated 字段24 小时范围(SQL 服务器的条件会有所不同)

请注意,您还需要提供符合 hbase 行键的列作为列(在本例中为 id),否则将无法正常工作。