繁体   English   中英

在路径文件中加载到分区表

[英]Loading in path file to a partitioned table

我正在尝试通过运行此命令将文件本地加载到Hive中:

LOAD DATA INPATH '/data/work/hive/staging/ExampleData.csv' INTO TABLE tablename;

这给了我错误:

SemanticException [错误10062]:需要指定分区列,因为目标表已分区(状态= 42000,代码= 10062)

我找到的答案建议创建一个中间表,然后让动态分区加载到分区表中。

我创建了一个匹配数据并截断它的表:

create table temptablename as select * from tablename;
truncate table temptablename

然后使用以下方法加载数据

LOAD DATA INPATH '/data/work/hive/staging/ExampleData.csv' INTO TABLE temptablename;

我如何进行动态分区?

1.Load data into temptablename(without partition)
create table temptablename(col1,col2..);
LOAD DATA INPATH '/data/work/hive/staging/ExampleData.csv' INTO TABLE 
temptablename;

now once you have data in intermediate table ,you can kick in dynamic 
partitioning using following command.

2.INSERT into tablename PARTITION(partition_column) select * from 
temptablename;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM