簡體   English   中英

我應該使用哪種AWS服務來處理大型文本文件?

[英]Which AWS service should I use to process large text file?

我有一個用例,需要讀取一個非常大的文本文件,其中最多可以包含一百萬條記錄。 對於每條記錄,我必須執行一些驗證,然后將其轉換為其他JSON,然后將其推送到SNS主題。 我不需要順序閱讀它們,因此可以使用並行性。 一種選擇是將文件放入S3存儲桶中,然后使用lambda處理文件,該文件將記錄(散開地)散發到多個lambda函數中,這些函數負責轉換(和驗證),然后將其推送到SNS。 另一種選擇是使用運動學流,並使用多個lambda執行相同的操作。 使用運動學流的多個Lambda

理想的方法是什么?

  1. S3-> Lambda->多個Lambdas-> SNS
  2. Kinesis->多個Lambda(或Lambda->多個Lambdas-> SNS)

您可能需要研究AWS Glue。 該服務可以對S3中存儲的大多數內容執行ETL,因此它可以避免您自己執行此操作的麻煩。 結合S3觸發Lambda,這可能是一個有趣的選擇?

編輯:如果可以使用RegExs解析文件,也許嘗試Athena? 雅典娜相對便宜,可以輕松處理更大的文件。

如果記錄的長度可預測,則可以使用Range請求將文件傳遞給Lambda之前對文件進行分割,以防止運行時間過長。

另外,您是否嘗試過使用Lambda解析和分塊文件? 100萬條記錄並不多,簡單地將行拆分和處理(大塊)交給驗證(或SNS)就不成問題。

暫無
暫無

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

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