使用AWS Lambda使用變更串流 - Amazon DocumentDB

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

使用AWS Lambda使用變更串流

亞馬遜文檔數據庫集成AWS Lambda這樣您就可以使用 Lambda 函數來處理變更串流中的記錄。Lambda 事件來源對應是一種資源,可用來叫用 Lambda 函數,以處理不直接叫用 Lambda 的亞馬遜文件資料庫事件。使用 Amazon DocumentDB 變更串流做為事件來源,您可以建立事件驅動的應用程式,以回應資料中的變更。例如,您可以使用 Lambda 函數來處理新文件、追蹤現有文件的更新,或記錄已刪除的文件。

您可以設定事件來源對應,將記錄從 Amazon 文件資料庫變更串流傳送至 Lambda 函數。事件可以一次傳送一個或批次傳送以提高效率,並按順序處理。您可以根據特定的時間範圍持續時間 (0-300 秒) 或批次記錄計數 (最多 10,000 筆記錄) 來設定事件來源對應的批次處理行為。您可以建立多個事件來源對應,以處理具有多個 Lambda 函數的相同資料,或使用單一函數處理來自多個串流的不同項目。

如果您的函數傳回錯誤,Lambda 會重試批次,直到成功處理為止。如果變更串流中的事件已過期,Lambda 將停用事件來源對應。在這種情況下,您可以建立新的事件來源對應,並使用您選擇的起始位置進行配置。由於輪詢器的分散式特性,Lambda 事件來源映射會至少處理一次事件。因此在極少數情況下,您的 Lambda 函數可能會收到重複的事件。遵循使用的最佳做法AWS Lambda函數和構建冪等函數,以避免與重複事件有關的問題。如需詳細資訊,請參使用AWS Lambda console與亞馬遜文檔數據庫AWS Lambda開發者指南

作為效能最佳實務,Lambda 函數必須為短期函數。為了避免產生不必要的處理延遲,此函數也不應執行複雜的邏輯。尤其對於高速串流而言,相較於同步長時間執行的 Lambda,觸發非同步後續處理 Step Function 工作流程是較佳的做法。如需 AWS Lambda 的詳細資訊,請參閱《AWS Lambda 開發人員指南》。

限制

以下是使用亞馬遜文檔數據庫和時要考慮的限制AWS Lambda:

  • AWS Lambda目前僅在亞馬遜文檔數據庫 4.0 和 5.0 上受支持。

  • AWS Lambda彈性叢集或全域叢集目前不支援。

  • AWS Lambda有效載荷大小不能超過 6MB。如需 Lambda 批次大小的詳細資訊,請參閱中的「批次處理行為」事件來源映射」區段中的AWS Lambda開發者指南