我从sqoop文档中读到
23.6。支持分区Sqoop HCatalog功能支持以下表格类型:
未分区表具有静态分区键的分区表 指定带有动态分区键的分区表 数据库结果集分区表与静态的组合 密钥和其他动态分区密钥
但我没有得到如何使用sqoop使用动态分区。
sqoop import --connect jdbc:mysql://localhost:3306/test
--username root
--password-file file:///home/hdfs/.password
--split-by id
--table test
--delete-target-dir
--fields-terminated-by ","
--hcatalog-table test
--hcatalog-storage-stanza "stored as orcfile"
--create-hcatalog-table
--hcatalog-partition-keys created_at
--map-column-hive created_at=date,updated_at=date
但是我收到了这个错误...
--hcatalog-partition-keys和--hcatalog-partition-values 应提供或者省略这两个选项。
如果我使用--hcatalog-partition-values
,则将其指定为静态分区。
sqoop import --connect jdbc:mysql://localhost:3306/test
--username root
--password-file file:///home/hdfs/.password
--split-by id
--table test
--delete-target-dir
--fields-terminated-by ","
--hcatalog-table test
--hcatalog-storage-stanza "stored as orcfile"
--create-hcatalog-table
--hcatalog-partition-keys created_at
--hcatalog-partition-value created_at
--map-column-hive created_at=date,updated_at=date
将[{1}}作为created_at
后,它创建了如下目录:hcatalog-partition-value
它应该使用apps/hive/warehouse/test/created_at=created_at
列来根据数据创建动态分区。
请帮我解决这个问题。谢谢!