選取您的 Cookie 偏好設定

我們使用提供自身網站和服務所需的基本 Cookie 和類似工具。我們使用效能 Cookie 收集匿名統計資料,以便了解客戶如何使用我們的網站並進行改進。基本 Cookie 無法停用,但可以按一下「自訂」或「拒絕」以拒絕效能 Cookie。

如果您同意,AWS 與經核准的第三方也會使用 Cookie 提供實用的網站功能、記住您的偏好設定,並顯示相關內容,包括相關廣告。若要接受或拒絕所有非必要 Cookie,請按一下「接受」或「拒絕」。若要進行更詳細的選擇,請按一下「自訂」。

映射工作流程狀態

焦點模式
映射工作流程狀態 - AWS Step Functions

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

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

使用 Map 狀態,為資料集中的每個項目執行一組工作流程步驟。Map 狀態的反覆運算會平行執行,因此可以快速處理資料集。 Map 狀態可以使用各種輸入類型,包括JSON陣列、Amazon S3 物件清單或CSV檔案。

Step Functions 提供兩種類型的處理模式,用於在工作流程中使用 Map 狀態:內嵌模式和分散式模式。

提示

若要將使用 Map 狀態的工作流程範例部署至 AWS 帳戶,請參閱 AWS Step Functions 研討會模組 5 - 選擇狀態和映射狀態

映射狀態處理模式

Step Functions 會根據您希望如何處理資料集中的項目,為 Map 狀態提供下列處理模式。

  • 內嵌 – 有限並行模式。在此模式中,狀態的每個反覆運算都會在包含 Map 狀態的工作流程內容中Map執行。Step Functions 會將這些反覆運算的執行歷史記錄新增至父工作流程的執行歷史記錄。根據預設,Map狀態會以內嵌模式執行。

    在此模式中, Map 狀態只接受JSON陣列做為輸入。此外,此模式最多支援 40 個並行反覆運算。

    如需詳細資訊,請參閱在 Step Functions 工作流程的內嵌模式中使用映射狀態

  • 分散式 – 高並行模式。在此模式中, Map 狀態會以子工作流程執行的方式執行每個反覆運算,這可實現高達 10,000 個平行子工作流程執行的高並行。每個子工作流程執行都有自己的獨立執行歷史記錄,與父工作流程的執行歷史記錄不同。

    在此模式中, Map 狀態可接受JSON陣列或 Amazon S3 資料來源作為其輸入,例如 CSV 檔案。

    如需詳細資訊,請參閱分散式模式

您應該使用的模式取決於您希望如何處理資料集中的項目。如果工作流程的執行歷史記錄不超過 25,000 個項目,或者如果您不需要超過 40 個並行反覆運算,請在內嵌模式中使用 Map 狀態。

當您需要協調符合下列任一條件組合的大規模平行工作負載時,請在分散式模式中使用 Map 狀態:

  • 資料集的大小超過 256 KiB。

  • 工作流程的執行事件歷史記錄會超過 25,000 個項目。

  • 您需要並行超過 40 個並行反覆運算。

內嵌模式和分散式模式差異

下表重點介紹內嵌和分散式模式之間的差異。

內嵌模式 分散式模式
Supported data sources

接受從工作流程中上一個步驟傳遞的JSON陣列做為輸入。

接受以下資料來源做為輸入:

  • JSON 陣列從工作流程中的上一個步驟傳遞

  • JSON Amazon S3 儲存貯體中的 檔案,其中包含 陣列

  • CSV Amazon S3 儲存貯體中的 檔案

  • Amazon S3 物件清單

  • Amazon S3 清查

Map iterations

在此模式中,狀態的每個反覆運算都會在包含 Map 狀態的工作流程內容中Map執行。Step Functions 會將這些反覆運算的執行歷史記錄新增至父工作流程的執行歷史記錄。

在此模式中, Map 狀態會以子工作流程執行的方式執行每個反覆運算,這可實現高達 10,000 個平行子工作流程執行的高並行。每個子工作流程執行都有自己的獨立執行歷史記錄,與父工作流程的執行歷史記錄不同。

Maximum concurrency for parallel iterations

可讓您盡可能同時執行最多 40 個反覆運算。

可讓您執行最多 10,000 個平行子工作流程,一次處理數百萬個資料項目。

Input payload and event history sizes

對輸入承載大小和執行事件歷史記錄中的 25,000 個項目強制執行 256 KiB 的限制。

可讓您克服承載大小限制,因為 Map 狀態可以直接從 Amazon S3 資料來源讀取輸入。

在此模式中,您也可以克服執行歷史記錄限制,因為由 Map 狀態啟動的子工作流程執行會維護自己的執行歷史記錄,並與父工作流程的執行歷史記錄分開。

Monitoring and observability

您可以從主控台或叫用 GetExecutionHistoryAPI動作來檢閱工作流程的執行歷史記錄。

您也可以透過 CloudWatch 和 X-Ray 檢視執行歷史記錄。

當您在分散式模式下執行 Map 狀態時,Step Functions 會建立 Map Run 資源。Map Run 是指分散式映射狀態啟動的一組子工作流程執行。您可以在 Step Functions 主控台中檢視 Map Run。您也可以叫用 DescribeMapRunAPI動作。Map Run 也會向 發出指標 CloudWatch。

如需詳細資訊,請參閱在 Step Functions 數中檢視分散式對應執行

在本頁面

下一個主題:

內嵌模式

上一個主題:

平行
隱私權網站條款Cookie 偏好設定
© 2025, Amazon Web Services, Inc.或其附屬公司。保留所有權利。