我以前在每日分区中都有数据,
'2014/01/01
2014/01/02'
我曾经使用
添加分区'ALTER TABLE reporting_events_raw ADD PARTITION(year='2014', month='01', day='01')
LOCATION 'path/folder/2014/01/01';'
并在create table语句中给出
'PARTITIONED BY (year string, month string, day string)'
现在我们将按照每小时格式创建新分区,例如
'folder/534800
folder/534801
folder/534802'
我无法弄清楚如何在表格中添加分区。
任何人都可以告诉我如何添加分区以及如何在create table语句中声明该分区类型。
答案 0 :(得分:0)
纪元时间只不过是一个重要的价值
'PARTITIONED BY(year string,month string,day string,epoch_hour bigint)'
您可以在插入覆盖查询中使用动态分区
INSERT OVERWRITE TABLE abc PARTITION ( year, month , day , epoch_hour )
select
col1,
col2,
'2014' as year,
'01' as month,
'01' as day,
UNIX_TIMESTAMP('2014-01-01 00:00:00') as epoch_hour
from source_table;
请注意,您还需要从我上面硬编码的数据中推导出年,月,日。 请知道这是否对您有所帮助。