每日ETL作业大数据文件

问题描述

我正在使用 Athena,并且每天要处理大约 1000 个原始压缩数据文件(每个文件 13MB)。我需要有效地处理和存储以提高查询速度和成本,我通过分区来实现。

我目前正在使用 lambdas(为每个文件创建触发)作为我的 ETL,它 - 加载原始数据文件,重新组织列,更改文件格式(拼花),然后将其拆分并将其保存到多个文件在 S3 存储桶上。 然后另一个 lambda 启动并为 Athena 表创建新分区:

s3://raw_data/2020/01/01 --> s3://table_name/2020/01/01/0-50/(基于这些文件构建的雅典娜表)

许多分区会影响查询速度,所以我听说过 称为分区投影的新功能。使用此功能,我可以加快查询处理速度并自动进行分区管理。

我对这些选项有点困惑。

另一点是理论上,如果我理解正确,我可以通过使用 Athena CTAS 一次创建表然后执行 INSERT INTO 来摆脱 lambdas 并节省一些成本 每天(最多 100 个分区)但后来我仍然使用分区并且无法使用分区投影。

对于每天提供的文件,处理 ETL 的最有效方法是什么?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)