Hive静态分区问题

穆迪·辛格

我有一个csv文件,其中有600条记录,男女分别有300条。

我创建了一个Table_Temp并将所有这些记录填充到该表中。然后,我创建Table_Main带有gender分区列。

对于Temp_Table查询是:

Create table if not exists Temp_Table
(id string, age int, gender string, city string, pin string)
row format delimited
fields terminated by ','; 

然后我写下面的查询:

Insert into Table_Main
partitioned (gender)
select a,b,c,d,gender from Table)Temp

问题:我正在获取文件/user/hive/warehouse/mydb.db/Table_Main/gender=Male/000000_0

在此文件中,我总共获得600条记录。我不确定发生了什么,但是我期望我应该在此文件中获得300条记录(仅Male)。

问:1。我在哪里弄错了?

问:2。我是否应该为所有其他值(不在静态分区中)提供一个文件夹?如果没有,那将会发生什么?

穆迪·辛格

在静态分区中,我们需要在将数据插入分区表中时指定一个where条件。

为此,我们可以使用没有where条件的动态分区。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章