0

我使用下表属性将范围设置为日期列

'projection.date.range' = 'NOW-365DAYS,NOW+1DAYS'

该表没有来自 NOW-365DAYS 的数据,因为它是一个新表。在此表上从 Athena 查询会导致大量的 listbucket 请求。我不想发生这种情况。所以想设置一个范围如下

'projection.date.range' = 'MAX(2022/01/12, NOW-365DAYS), NOW+1DAYS'这样我就可以避免空分区。但它给我一个错误。

有没有办法使用 MAX/MIN 函数projection.date.range

4

1 回答 1

0

不幸的是,不可能像那样限定分区投影范围。我建议将数据的下限设置为实际的第一个日期,直到相对范围有意义为止。

既然您说 Athena 正在发出大量 S3 列表请求,我假设您正在查询该分区键上没有过滤器的表。这总是会导致很多 S3 列表,至少 365 个,无论是否有数据。为什么您的查询没有在date分区键上过滤?

您希望范围是一年后将删除数据的最后 365 天的原因是什么,还是有其他原因?

于 2022-01-17T11:23:39.470 回答