

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

# EMR Serverless 應用程式的任務並行和佇列
<a name="applications-concurrency-queuing"></a>

從 Amazon EMR 7.0.0 版及更新版本開始，為您的應用程式指定任務執行佇列逾時和並行組態。當您指定此組態時，Amazon EMR Serverless 會從佇列任務開始，並根據應用程式的並行使用率開始執行。例如，如果您的任務執行並行為 10，您的應用程式一次只會執行十個任務。剩餘的任務會排入佇列，直到其中一個執行中的任務終止為止。如果提早達到佇列逾時，您的任務會逾時。如需詳細資訊，請參閱 [任務執行狀態](job-states.html)。

## 並行和佇列的主要優點
<a name="applications-concurrency-key-benefits"></a>

當需要提交許多任務時，任務並行和佇列可提供下列優點：
+ 它有助於控制並行執行任務，以有效率地使用您的應用程式層級容量限制。
+ 佇列可以包含突增的任務提交，並具有可設定的逾時設定。

## 並行和佇列入門
<a name="applications-concurrency-getting-started"></a>

下列程序示範實作並行和佇列的幾種不同方式。

**使用 AWS CLI**

1. 建立具有佇列逾時和並行任務執行的 Amazon EMR Serverless 應用程式：

   ```
   aws emr-serverless create-application \
   --release-label emr-7.0.0 \
   --type SPARK \
   --scheduler-configuration '{"maxConcurrentRuns": 1, "queueTimeoutMinutes": 30}'
   ```

1. 更新應用程式以變更任務佇列逾時和並行：

   ```
   aws emr-serverless update-application \
   --application-id application-id \
   --scheduler-configuration '{"maxConcurrentRuns": 5, "queueTimeoutMinutes": 30}'
   ```
**注意**  
您可以更新現有的應用程式，以啟用任務並行和佇列。若要這樣做，應用程式必須具有發行標籤 *emr-7.0.0* 或更新版本。

**使用 AWS 管理主控台**

下列步驟示範如何使用 來開始使用任務並行和佇列 AWS 管理主控台：

1. 前往 EMR Studio 並選擇建立具有發行標籤 EMR-7.0.0 或更高版本的應用程式。

1. 在**應用程式設定選項**下，選取**使用自訂設定**選項。

1. **在其他組態**下，有**任務執行設定的**區段。選取**啟用任務並行**選項以啟用此功能。

1. 選取後，選取**並行任務執行**和**佇列逾時**，分別設定並行任務執行和佇列逾時的數量。如果您未輸入這些設定的值，則會使用預設值。

1. 選擇**建立應用程式**，則會在啟用此功能的情況下建立應用程式。若要驗證，請前往儀表板，選取您的應用程式，然後在屬性索引標籤下檢查，以判斷功能是否已啟用。

在組態之後，提交啟用此功能的任務。

## 並行和佇列的考量事項
<a name="applications-concurrency-considerations"></a>

當您實作並行和佇列時，請考慮下列事項：
+ Amazon EMR 7.0.0 版及更新版本支援任務並行和佇列。
+ Amazon EMR 7.3.0 版及更新版本預設會啟用任務並行和佇列。
+ 您無法更新處於 **STARTED** 狀態的應用程式並行。
+ 的有效範圍`maxConcurrentRuns`為 1 到 1000，`queueTimeoutMinutes`而 的有效範圍為 15 到 720。
+ 帳戶最多可有 2000 個任務處於 **QUEUED** 狀態。
+ 並行和佇列適用於批次和串流任務。它不能用於互動式任務。如需詳細資訊，請參閱[透過 EMR Studio 使用 EMR Serverless 執行互動式工作負載](interactive-workloads.html)。