多列hive上的动态分区

时间:2015-06-08 17:05:34

标签: mysql hadoop hive

我有一个包含多个列的文件,其中两列是年份和月份。 我正在尝试根据这两列年份和月份对表进行动态分区。

我尝试了以下命令:

load data inpath '/com/data/abc.txt' into table ABC_TABLE partition (year,month);

以下是我得到的例外:

FAILED: SemanticException org.apache.hadoop.hive.ql.metadata.HiveException: MetaException(message:Invalid partition key & values; keys [year_cd, quarter_num, ], values [])

有没有可以帮我解决这个问题?

1 个答案:

答案 0 :(得分:1)

加载数据时,需要根据列值提及分区的详细信息。请参阅下面的语法,由clouder提供。

LOAD DATA INPATH 'hdfs_file_or_directory_path' [OVERWRITE] INTO TABLE tablename [PARTITION (partcol1=val1, partcol2=val2 ...)]

这是一种静态方法。如果您需要动态,请查看here和实际示例here