

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# パイプラインの構造と実行
<a name="build-and-manage-pipeline"></a>

**Topics**
+ [パイプラインの構造](#build-and-manage-pipeline-structure)
+ [並列処理設定を使用したパイプラインの実行](#build-and-manage-pipeline-execution)

## パイプラインの構造
<a name="build-and-manage-pipeline-structure"></a>

Amazon SageMaker Pipelines インスタンスは、`name`、`parameters`、`steps` で構成されています。パイプライン名は、`(account, region)` ペア内で一意である必要があります。ステップ定義で使用されるすべてのパラメータは、パイプラインで定義する必要があります。リストされているパイプラインステップは、相互のデータ依存関係によって実行順序が自動的に決定されます。Pipelines サービスは、データ依存関係 DAG 内のステップ間の関係を解決して、実行を完了するステップのセットを作成します。以下は、パイプライン構造の例です。

**警告**  
ビジュアルエディタまたは SageMaker AI Python SDK を使用してパイプラインを構築する場合、パイプラインパラメータやステップ定義フィールド (環境変数など) に機密情報を含めないでください。これらのフィールドは、将来 `DescribePipeline` リクエストで返される際に表示されてしまいます。

```
from sagemaker.workflow.pipeline import Pipeline
  
  pipeline_name = f"AbalonePipeline"
  pipeline = Pipeline(
      name=pipeline_name,
      parameters=[
          processing_instance_type, 
          processing_instance_count,
          training_instance_type,
          model_approval_status,
          input_data,
          batch_data,
      ],
      steps=[step_process, step_train, step_eval, step_cond],
  )
```

## 並列処理設定を使用したパイプラインの実行
<a name="build-and-manage-pipeline-execution"></a>

デフォルトでは、パイプラインは、並列で実行できるすべてのステップを実行します。この動作は、パイプラインを作成または更新するとき、およびパイプラインの実行を開始または再試行するときに `ParallelismConfiguration` プロパティを使用して制御できます。

並列処理の設定は、実行ごとに適用されます。例えば、2 つの実行を開始して、それぞれが最大 50 ステップを同時に実行できる場合は、合計 100 ステップが同時に実行されます。また、実行の開始時、再試行時、または更新時に指定した `ParallelismConfiguration` は、パイプラインで定義した並列処理設定よりも優先されます。

**Example `ParallelismConfiguration` でパイプラインの実行を作成する**  

```
pipeline = Pipeline(
        name="{{myPipeline}}",
        steps=[step_process, step_train]
    )

  pipeline.create(role, parallelism_config={"MaxParallelExecutionSteps": 50})
```