我的数据每天都存储在一个新文件夹中。例如:/2021年4月1日/2021/04/02等等
我正在使用下面的清单文件导入数据:
{
"filelocations": [
{
"URIPrefixes": [
"s3://<folder-name>/2021/04/02/"
]
}
],
"globalUploadSettings": {
"format": "JSON"
}
}
有没有一种方法可以让QuickLight加载至少一个月的数据(指向类似于此处s3://2021/04/(,然后我可以为该月进行自动刷新?
是的,不要使用S3作为数据源,而是使用Athena。Athena允许您使用SQL查询S3中的一组文件,其中包括许多文件和文件夹中的数据。
您可以自动发现数据文件的格式/字段/模式,并通过AWS Glue Crawlers在Athena中将它们公开为表。
以下是一些高级步骤,但我鼓励您通读AWS文档。
- 针对父S3文件夹创建Glue数据爬网程序
- 您可能还需要创建一个Glue数据库作为其中的一部分,Glue数据库实际上只是一个名称空间,爬网程序将在其中放置它找到的任何表的定义
- 运行爬网程序,它将在Glue/Athena数据库中创建表
- 验证创建的表是否具有预期的字段
- 转到QuickLight,使用上面爬行器创建的Athena/Gue数据库和Athena/Glue表添加一个新的Athena数据源