

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

# 使用分散式映射處理來自 Amazon S3 的 CSV 檔案
<a name="sample-dist-map-csv-process"></a>

此範例專案示範如何使用[*分散式映射狀態*](state-map-distributed.md)來反覆執行使用 Lambda函數產生的 CSV 檔案超過 10，000 個資料列。CSV 檔案包含客戶訂單的運送資訊，並存放在 Amazon S3 儲存貯體中。分散式映射會反覆運算 CSV 檔案中 10 個資料列的批次，以進行資料分析。

分散式地圖包含偵測任何延遲訂單的 Lambda 函數。分散式地圖也包含[內嵌地圖](state-map-inline.md)，以處理批次中的延遲訂單，並在陣列中傳回這些延遲訂單。對於每個延遲的順序，內嵌映射會傳送訊息至 Amazon SQS佇列。最後，此範例專案會將 [Map Run](concepts-examine-map-run.md) 結果儲存到 中的另一個 Amazon S3 儲存貯體 AWS 帳戶。

透過分散式地圖，您一次最多可以執行 10，000 個平行子工作流程執行。在此範例專案中，分散式映射的最大並行設定為 1000，限制為 1000 個平行子工作流程執行。

此範例專案會建立狀態機器、支援 AWS 的資源，並設定相關的 IAM 許可。探索此範例專案，了解如何使用分散式地圖來協調大規模的平行工作負載，或使用它做為您自己的專案的起點。

## 步驟 1：建立狀態機器
<a name="sample-dist-map-csv-create"></a>

1. 開啟 [Step Functions 主控台](https://console.aws.amazon.com/states/home?region=us-east-1#/)，然後選擇**建立狀態機器**。

1. 選擇**從範本建立**，並尋找相關的入門範本。選擇 **Next** (下一步) 繼續。

1. 選擇如何使用範本：

   1. **執行示範** – 建立唯讀狀態機器。檢閱後，您可以建立工作流程和所有相關資源。

   1. **建置 –** 提供可編輯的工作流程定義，您可以使用自己的資源來檢閱、自訂和部署。(**不會**自動建立相關資源，例如函數或佇列。)

1. 選擇**使用範本**以繼續您的選擇。
**注意**  
*部署至您 帳戶的 服務需支付標準費用。*

## 步驟 2：執行示範狀態機器
<a name="sample-dist-map-csv-run"></a>

如果您選擇**執行示範**選項，則會部署並準備好執行所有相關資源。如果您選擇**在其中建置**選項，您可能需要設定預留位置值並建立其他資源，才能執行自訂工作流程。

1. 選擇**部署並執行**。

1. 等待 CloudFormation 堆疊部署。這最多可能需要 10 分鐘。

1. 開始**執行**選項出現後，請檢閱**輸入**並選擇**開始執行**。

**恭喜您！**  
您現在應該有狀態機器的執行中示範。您可以在**圖形檢視**中選擇狀態，以檢閱輸入、輸出、變數、定義和事件。