[英]saving athena results to another table with partitions
来自 AWS 雅典娜
我正在尝试连接多个表,然后使用分区键保存它。
跑步后
select *
from t1
union all
select *
from t2
select *
from t3
在控制台上创建表创建这样的查询,
create table db.table_name
with(
format='parquet',
external_location=...
) AS
select *
from t1
union all
select *
from t2
select *
from t3;
但我想按列添加分区。 我试过了
在顶部和底部添加分区。 还保存了查询结果,然后使用CREATE EXTERNAL TABLE
命令从中创建了新表(这有效但返回空行 - >即使在运行MSCK REPAIR
之后)
来自https://aws.amazon.com/premiumsupport/knowledge-center/athena-create-use-partitioned-tables/看来我需要按分区将数据保存到 S3 中,所以在 bucket1 中它将有 bucket1/2021,bucket1 /2022 如果 'year' 列是分区列。 正确的? 如果是,创建分区桶是否有效?
我已经使用此方法成功创建了新的分区表:
CREATE TABLE my_table
WITH (
format = 'PARQUET',
parquet_compression = 'SNAPPY',
external_location = 's3://bucket/folder/',
partitioned_by = ARRAY['year']
)
AS
SELECT
...
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.