【发布时间】:2020-09-14 08:39:27
【问题描述】:
我在基于 PrestoDB 的 AWS Athena 上运行它。我最初的计划是查询过去 3 个月的数据以分析该数据。但是,即使是过去 2 小时的查询时间也需要 30 多分钟,此时查询超时。有没有更高效的查询方式?
SELECT column1, dt, column 2
FROM database1
WHERE date_parse(dt, '%Y%m%d%H%i%s') > CAST(now() - interval '1' hour AS timestamp)
日期列以字符串YYYYmmddhhmmss的形式记录
【问题讨论】:
-
您的数据文件的格式是什么?数据是否被压缩?您是否使用分区数据?这些都是可能影响 Amazon Athena 的性能(以及成本!)的重要因素。见:Analyzing Data in S3 using Amazon Athena | AWS Big Data Blog
-
这看起来很像由于源中的小文件而发生的问题。您能确认源中的平均文件大小吗?
标签: string datetime query-optimization where-clause presto