hadoop - 数据未加载到 Hive 中的分区表中

标签 hadoop mapreduce hive partition

我正在尝试为我的表创建分区以更新值。

这是我的示例数据

1,Anne,Admin,50000,A
2,Gokul,Admin,50000,B
3,Janet,Sales,60000,A

我想将Janet 的 部门更新为B

为此,我创建了一个以部门作为分区的表。

create external table trail (EmployeeID Int,FirstName String,Designation String,Salary Int) PARTITIONED BY (Department String) row format delimited fields terminated by "," location '/user/sreeveni/HIVE';

但是在执行上述命令时。 trail 表中没有插入数据。

hive>select * from trail;                               
OK
Time taken: 0.193 seconds

hive>desc trail;                                        
OK
employeeid              int                     None                
firstname               string                  None                
designation             string                  None                
salary                  int                     None                
department              string                  None                

# Partition Information      
# col_name              data_type               comment             

department              string                  None   

我做错了什么吗?

更新

按照建议,我尝试将数据插入到我的表中

load data inpath '/user/aibladmin/HIVE' overwrite into table trail Partition(Department);

但是它正在显示

FAILED: SemanticException [Error 10096]: Dynamic partition strict mode requires at least one static partition column. To turn this off set hive.exec.dynamic.partition.mode=nonstrict

设置 set hive.exec.dynamic.partition.mode=nonstrict 后也没有正常工作。

还有什么事要做。

最佳答案

尝试以下两个属性

SET hive.exec.dynamic.partition = true;
SET hive.exec.dynamic.partition.mode = nonstrict;

在为分区表编写插入语句时,请确保在 select 子句的最后指定分区列。

关于hadoop - 数据未加载到 Hive 中的分区表中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25905989/

相关文章:

java - Mapreduce - 保留输入顺序

hadoop - 在 hadoop 多节点集群上启动 HDFS 守护进程时出错。Datanode 未启动

hadoop - 复杂的 Hive 查询

java - HBase MapReduce中的Nullpointer异常

hadoop - 为什么在 Hadoop 中扩展 RecordReader 时同步 close() 方法

java - Spring数据的增量mapreduce

java - java中mapreduce编程没有输出值

hadoop - Hive 中的多个 Where 子查询不起作用

mysql - hive 中的分区

python - python join函数的使用