有没有可能在雅典娜创建一个具有不同分区类型的表?
例如,每年一个月一天有一个分区,而另一个分区只有一个id
CREATE EXTERNAL TABLE IF NOT EXISTS table_example(
name string,
adress
PARTITIONED BY (year string, month string, day string) ----> partition 1
PARTITIONED BY (id int) -----------> partition 2
ROW FORMAT SERDE 'org.openx.data.jsonserde.JsonSerDe'
WITH SERDEPROPERTIES ('ignore.malformed.json' = 'true')
LOCATION 's3://example/folder/';
类似的事情可能发生吗?
谢谢
1条答案
按热度按时间gjmwrych1#
不,不可能。分区不是“索引”。它是文件系统(或者像存储这样的文件系统,这里是s3)上的数据布局。你想要的是两份独立的数据拷贝。为此,您可以简单地创建两个表,一个按年/月/日分区,另一个按id分区。
但是,假设
id
是表中的标识符,确实不希望按id
. 不过,你可能有兴趣通过id来探索bucketing。