在處理高流量的事件驅動架構時,如何有效地寫入資料到 DynamoDB 和 S3 是一個常見的挑戰。這幾天將分享如何通過批次處理優化,大幅降低 AWS 成本並提升系統效能。
Kinesis 在 trigger request 的時候,可以在 Lambda 設定把 Kinesis 的 record 做 batch ,為了可以降低處理資料的時間,也節省一些 Lambda 的錢。
在之前的文章,運用 Kinesis 並搭配 Lambda 把資料送到 S3 和 DynamoDB,處理資料的方式,是一筆一筆透過 S3 的 put_object 和 DynamoDB 的 put_item 塞進去,這種方式會花費比較多的時間,也因為需要多次呼叫 API ,所以需要花費的費用比較多,接下來兩天會說明如何 batch 把資料一次塞進 S3 和 DynamoDB,以及大約會省下多少錢。