我已经设置了一个数据管道,根据预定义的示例,将文件从 S3 存储桶导入 DynamoDB 表。每次导入作业开始时,我都想截断表(或删除并创建一个新表)。当然,使用 AWS SDK 可以做到这一点,但我只想使用数据管道来做到这一点。
可以这么做吗?
谢谢你的帮助
答案1
由于您几个月前就问过这个问题,所以我不确定您是否仍需要执行此操作,但由于互联网上缺乏有关此主题的信息,我决定创建一个教程并将其发布在这里,以帮助其他面临同样情况的人。
这对我有用。
基本上你需要以下东西:
- S3 bucket(您将在其中上传要执行的 shell 脚本)
- AMI EC2(将执行上述脚本)
- 管道(已将 DynamoDB 数据导入 S3 存储桶)
如果您已经拥有了所有这些,那么我们就可以开始了!
按着这些次序:
- 添加一项活动并将其命名为“CleanTableJob”
- 在 CleanTableJob 上相应地设置设置:(在运行时 -> 选择新资源并将其命名为 CleanDynamodbTableResource)
- 在 CleanDynamodbTableResource 上相应地设置:
在您的 S3 存储桶上,您可以提供任何处理删除 DynamoDB 上数据的内容,如下所示:
java -jar /home/ec2-user/downloads/dynamodb_truncate_table-1.0-SNAPSHOT.jar
就是这样:
希望它能帮助你们