簡體   English   中英

如何在Hive中以原始日期作為分區插入表中?

[英]How can insert into the table with the original day as partition in Hive?

create  table h5_qti_desc
( h5id string,
  query string,
  title string,
  item string,
  query_ids string,
  title_ids string,
  item_ids string,
  label bigint
)PARTITIONED BY (day string)  LIFECYCLE 160;

insert overwrite into h5_qti_desc
select * from aaa
;

我創建了一個名為h5_qti_desc的表,我想從另一個aaa表插入到該表中,該表具有day字段,並且aaa中沒有分區。 表aaa有幾天,例如'20171010','20171015'...
如何將day作為分區插入到h5_qti_desc中,而aaa中的天充當h5_qti_desc分區中的day。

您可以使用Hive動態分區功能來插入數據。 動態分區插入(或多分區插入)旨在通過動態確定在掃描輸入表時應創建和填充哪些分區來解決此問題。

以下是使用一個insert語句將數據加載到所有分區的示例:

hive>set hive.exec.dynamic.partition.mode=nonstrict;

hive>INSERT OVERWRITE TABLE h5_qti_desc PARTITION(day)
             SELECT * FROM aaa
             DISTRIBUTE day;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM