通过查询查看AWS athena背后的文件

See the files behind AWS athena with a query

你能向 AWS Athena 询问 table 后面的 S3 文件吗?

例如

msck show partitions

会给

s3://some-bucket/some-key/some-table/file1.csv,
s3://some-bucket/some-key/some-table/file2.csv

对于 table 分区或分桶的类似。

Athena/Presto 有一个名为 $path 的隐藏列,可用于找出一行来自哪个文件。您还可以使用它来找出分区中的所有文件或 table:

SELECT DISTINCT "$path"
FROM my_table

请注意,在 Athena 引擎 v1 中,这是一个非常 昂贵的操作,但在引擎 v2 中它已经过优化,至少上面的查询不会扫描任何数据。

有关更多信息,请参阅 docs