我有一个dynamodb表,我需要每小时读一次以在数据仓库上执行加载。我认为有两种选择:
最好的方法是什么?
答案 0 :(得分:1)
对于1号,你的方式还不错。 我需要更多规格才能改进。
对于数字2,您应该使用Kinesis Firehose并将其配置为直接将数据保存到S3。
答案 1 :(得分:1)
使用DynamoDB更新流是在前端服务数据库(DynamoDB)和分析数据库之间进行连接的有效方式。它允许解耦,使系统的每个部分独立,从而不会破坏其他部分。
它还允许您拥有无服务器环境,从而减少您的操作负担和工作量。您可以使用正在读取更新流的单个Lambda函数来确定将哪些数据记录到哪个数据存储区。通常人们将所有插入/更新/删除作为日志写入S3,并将相关记录和列写入数据仓库中的各个表(例如,Redshift)。您的Lambda函数可以将转换后的记录放到几个Kinesis Firehose中,这样可以将数据可靠地移动到目的地。