gpt4 book ai didi

hadoop - Hive和Sqoop分区

转载 作者:行者123 更新时间:2023-12-02 21:41:49 25 4
gpt4 key购买 nike

我从Netezza表中获取了sqoopd数据,并且输出文件位于HDFS中,但其中一列是时间戳,我想将其作为 hive 表中的日期列加载。使用该列,我想按日期创建分区。我怎样才能做到这一点?

示例:HDFS中的数据就像= 2013-07-30 11:08:36

在配置单元中,我只想加载日期(2013-07-30)而不是时间戳。我想每天对该列进行分区。

如何动态地按列传递分区?

我尝试将数据加载到一个表中作为源。在最终表中,我将通过(date_column =动态日期)select * from table1插入覆盖表分区

最佳答案

设置这两个属性-

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

而且查询可以像-
INSERT OVERWRITE TABLE TABLE PARTITION (DATE_STR)
SELECT
:
:
-- Partition Col is the last column
to_date(date_column) DATE_STR
FROM table1;

您可以探索hive-import的两个选项-如果它是 incremental import,则可以获取当天的分区。
--hive-partition-key    
--hive-partition-value

关于hadoop - Hive和Sqoop分区,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28202116/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com