如何使用 AWS Crawler 为动态 S3 路径创建 Athena 表?

How to create Athena tables for dynamic S3 paths using AWS Crawler?

下面给出了存在多个文件夹的我的 S3 路径。每个文件夹都包含一个 CSV 文件,每个文件都具有不同的架构。

花括号 {} 中的值将是动态的。

s3://test_bucket/{val1}/data/{val2}/input/latest/

s3://test_bucket/{val1}/data/{val2}/input/archived/timestamp={val3}/

我想使用 AWS Glue Crawler 创建 Athena tables。我们可以有一个单独的数据库 input_data 当前和存档。

形成的 tables 应该在 val1 和 val2 上对当前文件和归档文件进行分区。并且,在 archived 的情况下,table 中应存在一个额外的分区,即 val3

请帮助我使用我可以采取的任何方法来设置动态创建 table 的配置。我真的很感激你的时间。如果需要更多信息,请告诉我。

最简单有效的方法是使用分区投影。服务文档:https://docs.aws.amazon.com/athena/latest/ug/partition-projection.html

我的评论,使用api创建具有特定s3路径读取和写入的数据库名称的爬虫。