簡體   English   中英

從Amazon S3讀取500MB以上的數據並存儲在RDS PostgreSQL中

[英]Reading more than 500MB data from amazon s3 and storing in RDS PostgreSQL

我有一個RDS PostgreSQL實例。 我有自己的S3。 在我的項目中,我將在s3中上傳一些excel文件。 當文件落在s3上時,我需要讀取excel文件並將其存儲到數據庫中。

我使用Java創建了一個lambda函數,並將觸發器添加到了lambda函數。 當文件放在s3上時,我的lambda函數會自動調用並讀取文件並將其保存到db中。

但是就我而言,我的文件一次超過100MB。 Lambda僅工作5分鍾。

因此,我無法完全通過數據庫保存文件。 我在AWS中聽到過運動。 作為AWS的新手,我不知道如何使用它? 有誰能幫助我做到這一點?

Kinesis可能無法解決您的問題。

您的情況的限制因素是Lambda函數的執行時間限制,最高為5分鍾。

為了延長執行時間,我要做的是使用SQS隊列和EC2實例。 當文件屬於您的S3存儲桶時,您可以配置存儲桶以將事件發布到SQS隊列。 請參閱此處的示例以了解如何執行此操作。

EC2實例定期輪詢SQS隊列以查找新事件。 將新事件放入隊列后,EC2實例將檢索該事件,並將S3文件的數據復制到您的數據庫中。

編輯:Lambda現在在執行的15分鍾而不是5分鍾停止

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM