LogDate
不是表DDL的一部分,那么分区如何工作以及数据如何分配&检索发生。
create table tbl_1
(
CollectTimeStamp TIMESTAMP,
ObjectColumnName VARCHAR(256),
ObjectDatabaseName VARCHAR(256),
TypeofUse TINYINT
)
PARTITIONED BY (LogDate STRING)
row format delimited fields terminated by '\u0001'
stored as ORC
LOCATION '/tables/db1/tbl_1' ;
答案 0 :(得分:0)
分区列``肯定是表DDL的一部分,因为PARTITIONED BY
也是DDL。
分区是一个文件夹,因此不必将分区密钥数据存储在数据文件中。
分区信息(分区键,位置)存储在Metastore数据库中。对于动态分区加载,分区列应该在insert overwrite语句的最后一列。
查询表时,hive从Metastore读取有关分区(键,位置)的信息。
位置(文件夹)可以作为分区附加:
ALTER TABLE page_view ADD PARTITION (dt='2008-08-08', country='us') location '/path/to/us/part080808'
请参阅此处的文档:https://cwiki.apache.org/confluence/display/Hive/LanguageManual+DDL