0

我有一个 mysql 表,如下所示:

Mebmer_ID <- primary key
Member_Name
Member_Type

我运行了以下命令:

./bin/sqoop import --connect jdbc:mysql://${ip}/testdb -username root -password blabla --query 'SELECT * from member where Member_ID < 5 AND $CONDITIONS' --split-by Member_ID - -hbase-create-table --hbase-table 成员 --column-family i

但导入后,我看到 hbase 表如下所示:

rowkey   -  row : 1
Columns - Member_name=bla, Member_Type=bla

请注意,Sqoop 将我的 Member_ID 转换为预期的 Rowkey。但在我的专栏中,我看到了除 Member_ID 之外的所有其他字段。无论如何我可以将 Member_ID 作为我的行键,也在列族中,包含 Member_ID 列?

这是否也意味着,如果我的主键不称为“id”,在 sqoop 导入后,我会丢失主键的名称。就我而言,导入后,我不知道以前称为“Mmember_ID”的行键。

4

1 回答 1

2

通过设置属性 sqoop.hbase.add.row.key 对其进行排序。

e.g. sqoop import -Dsqoop.hbase.add.row.key=true
于 2013-09-23T00:51:36.317 回答