Sqoop--hbase行键选项是否支持多列组合

Sqoop--hbase行键选项是否支持多列组合,hbase,sqoop,Hbase,Sqoop,我正在使用sqoop将mysql表导入HBase。通常,HBase的行键不仅仅由一列组成,它通常是两列或三列+时间戳的组合,例如,row key=${col1}${col2}${timestamp} 我无法使用sqoop使其工作,只是想知道sqoop--hbase row key是否允许我在导入过程中执行类似于--hbase row key=col1、col2、tiemstamp的操作,然后我的hbase row key将以三个字段组合结束?我自己找到了答案: sqoop 1.4.4中添加了复合

我正在使用sqoop将mysql表导入HBase。通常,HBase的行键不仅仅由一列组成,它通常是两列或三列+时间戳的组合,例如,
row key=${col1}${col2}${timestamp}


我无法使用sqoop使其工作,只是想知道sqoop--hbase row key是否允许我在导入过程中执行类似于
--hbase row key=col1、col2、tiemstamp
的操作,然后我的hbase row key将以三个字段组合结束?

我自己找到了答案:

sqoop 1.4.4中添加了复合键:

是否将组合键与分隔符组合,例如:

row key = col1_col2_col3

此命令似乎将复合密钥导入hbase

sqoop \
import --verbose \
--connect "yourDatabase" \
--username yourUser \
--password-file yourPassword.password \
--table originTable \
--hbase-create-table \ 
--hbase-table destinationTable \
--column-family yourFamily \
--hbase-row-key keyExample1,keyExample2 
然而,在我看来,这个命令有两个问题。 正如一些人指出的那样,新的键列只是一个带有下划线的串联,作为定义的
--hbase行键的分隔。

此外,从导入的数据中删除指定为行键的原始列,并在新表中插入复合键

那么,你能把答案写在这里吗?你用什么命令来使用复合键?现在已经很晚了,但对其他人可能还是有帮助的。您应该将--hbase行键“KEY1,KEY2”与sqoop import命令一起使用。