mysql - 多列配置单元上的动态分区

标签 mysql hadoop hive

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

我尝试了以下命令:

将路径 '/com/data/abc.txt' 中的数据加载到表 ABC_TABLE 分区(年,月);

下面是我得到的异常:

失败:SemanticException org.apache.hadoop.hive.ql.metadata.HiveException:MetaException(消息:无效的分区键和值;键 [year_cd,quarter_num,],值 [])

最佳答案

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

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

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

关于mysql - 多列配置单元上的动态分区,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30715103/

相关文章:

mysql - 避免在查询中进行文件排序

hadoop - hadoop map/reduce 可以通过拆分数据大小来加速吗?

apache - 如何从源代码构建Apache配置单元

json - 将数据从多个 Hive 表转换为复杂的 JSON

SQL:在行或其他表中定义的日期范围之间求和销售额

sql - 如何在 SQLAlchemy > Presto 连接中指定 https 协议(protocol)?

MySQL 从子查询中选择顺序

php - Laravel belongsToMany 只能以一种方式工作

c++ - 如何在 Ubuntu 16.04 中安装 MySql Connector/C++

hadoop - hive 到 Hbase : wrong use case for Spark?