有没有一种方法可以通过清单文件自动将数据从S3导入Quicksight



我的数据每天都存储在一个新文件夹中。例如:/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文档。

  1. 针对父S3文件夹创建Glue数据爬网程序
    • 您可能还需要创建一个Glue数据库作为其中的一部分,Glue数据库实际上只是一个名称空间,爬网程序将在其中放置它找到的任何表的定义
  2. 运行爬网程序,它将在Glue/Athena数据库中创建表
  3. 验证创建的表是否具有预期的字段
  4. 转到QuickLight,使用上面爬行器创建的Athena/Gue数据库和Athena/Glue表添加一个新的Athena数据源

最新更新