AWS lambda 函数和 Athena 创建分区 table
AWS lambda function and Athena to create partitioned table
这是我的要求。每天我都会收到一个 CSV 文件到 S3 存储桶中。我需要对该数据进行分区并将其存储到 Parquet 中以最终映射 Table。我正在考虑使用每当上传文件时触发的 AWS lambda 函数。我不确定执行此操作的步骤是什么。
有(在 AWS 中一如既往!)几种方法可以做到这一点,首先想到的 2 个是:
- 使用 Cloudwatch 事件,将 S3 PutObject 对象级别) 操作作为触发器,并将您已经创建的 lambda 函数作为目标。
- 从 Lambda 函数开始,添加 suffix-filtered 触发器稍微容易一些,例如对于任何
.csv
文件,通过转到控制台中的函数配置,并在设计器部分添加一个触发器,然后选择 S3 和您要使用的操作,例如存储桶、事件类型、前缀、后缀。
在这两种情况下,您都需要编写 lambda 函数来完成您描述的工作,并且需要 IAM 访问存储桶以提取文件并处理它们。
这是我的要求。每天我都会收到一个 CSV 文件到 S3 存储桶中。我需要对该数据进行分区并将其存储到 Parquet 中以最终映射 Table。我正在考虑使用每当上传文件时触发的 AWS lambda 函数。我不确定执行此操作的步骤是什么。
有(在 AWS 中一如既往!)几种方法可以做到这一点,首先想到的 2 个是:
- 使用 Cloudwatch 事件,将 S3 PutObject 对象级别) 操作作为触发器,并将您已经创建的 lambda 函数作为目标。
- 从 Lambda 函数开始,添加 suffix-filtered 触发器稍微容易一些,例如对于任何
.csv
文件,通过转到控制台中的函数配置,并在设计器部分添加一个触发器,然后选择 S3 和您要使用的操作,例如存储桶、事件类型、前缀、后缀。
在这两种情况下,您都需要编写 lambda 函数来完成您描述的工作,并且需要 IAM 访问存储桶以提取文件并处理它们。