

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

# のコンポーネント AWS Batch
<a name="batch_components"></a>

AWS Batch は、リージョン内の複数のアベイラビリティーゾーンでのバッチジョブの実行を簡素化します。新規または既存の VPC 内に AWS Batch コンピューティング環境を作成できます。コンピューティング環境が稼働し、ジョブキューに関連付けられた後で、ジョブを実行する Docker コンテナイメージを指定するジョブ定義を指定できます。コンテナのイメージは、コンテナレジストリに保存され引き出されます。これは AWS インフラストラクチャの内にある場合も外にある場合もあります。

![のコンポーネント AWS Batch とその統合方法の表示](http://docs.aws.amazon.com/ja_jp/batch/latest/userguide/images/batch-components.png)


## コンピューティング環境
<a name="component_compute_environment"></a>

コンピューティング環境は、ジョブを実行するために使用されるマネージドまたはアンマネージドコンピューティングリソースのセットです。マネージド型のコンピューティング環境では、複数の詳細レベルで目的のコンピューティングタイプ (Fargate または EC2) を指定できます。コンピューティング環境は、特定の EC2 インスタンスタイプや特定のモデル (`c5.2xlarge` や `m5.10xlarge` など) を使用するように設定できます。または、最新のインスタンスタイプを使用するように指定することのみを選択できます。また、環境の vCPUs の最小数、希望数、最大数、およびスポットインスタンスに対して支払う金額をオンデマンドインスタンス料金と VPC サブネットのターゲットセットの割合として指定することもできます。 は、必要に応じてコンピューティングタイプを AWS Batch 効率的に起動、管理、終了します。お客様独自のコンピューティング環境を管理することもできます。そのため、 がユーザーに代わって AWS Batch 作成する Amazon ECS クラスター内のインスタンスをセットアップおよびスケーリングする責任があります。詳細については、「[のコンピューティング環境 AWS Batch](compute_environments.md)」を参照してください。

## ジョブキュー
<a name="component_job_queue"></a>

 AWS Batch ジョブを送信するときは、そのジョブがコンピューティング環境にスケジュールされるまでジョブが存在する特定のジョブキューに送信します。1 つのジョブキューには、1 つ以上のコンピューティング環境を関連付けることができます。これらのコンピューティング環境には優先度の値を割り当てることができ、複数のジョブキュー自体にまたがって割り当てることもできます。例えば、時間が重要なジョブを送信する高優先度キューや、コンピューティングリソースが安価であるときにいつでも実行できるジョブ用の低優先度キューを持つことができます。詳細については、「[ジョブキュー](job_queues.md)」を参照してください。

## ジョブ定義
<a name="component_job_definition"></a>

ジョブ定義は、ジョブの実行方法を指定します。ジョブ定義は、ジョブのリソースのブループリントであると考えることができます。ジョブに IAM ロールを指定して、他の AWS リソースへのアクセスを提供できます。また、メモリ要件と CPU 要件の両方を指定できます。また、ジョブ定義では、永続的ストレージのコンテナのプロパティ、環境変数、マウントポイントを制御できます。ジョブ定義の多くの仕様は、個別のジョブを送信するときに新しい値を指定してオーバーライドできます。詳細については、[ジョブ定義](job_definitions.md)を参照してください。

## ジョブ
<a name="component_job"></a>

 AWS Batchに送信する作業単位 (シェルスクリプト、Linux 実行可能ファイル、Docker コンテナイメージなど)。名前があり、ジョブ定義で指定したパラメータを使用して、コンピューティング環境の AWS Fargate または Amazon EC2 リソースでコンテナ化されたアプリケーションとして実行されます。ジョブは、他のジョブを名前または ID で参照できます。また、他のジョブの正常な完了または指定した[リソース](resource-aware-scheduling.md)のアベイラビリティに依存する場合があります。詳細については、「[ジョブ](jobs.md)」を参照してください。

## スケジューリングポリシー
<a name="component_scheduling_policy"></a>

スケジューリングポリシーを使用して、ジョブキュー内のコンピューティングリソースをユーザーやワークロード間でどのように配分するかを設定できます。公平配分スケジューリングポリシーを使用すると、ワークロードまたはユーザーに異なる共有識別子を割り当てることができます。 AWS Batch ジョブスケジューラのデフォルトは、先入れ先出し (FIFO) 戦略です。詳細については、「[公平配分スケジューリングポリシー](job_scheduling.md)」を参照してください。

## 消費型リソース
<a name="component_consumable_resource"></a>

消費型リソースは、サードパーティーのライセンストークン、データベースアクセス帯域幅、サードパーティー API への呼び出しを調整する必要性など、ジョブの実行に必要なリソースです。ジョブの実行に必要な消費型リソースを指定すると、Batch はジョブをスケジュールするときにこれらのリソースの依存関係を考慮します。必要なすべてのリソースが利用可能なジョブのみを割り当てることで、コンピューティングリソースの使用率の低下を抑制できます。詳細については、「[リソース認識型スケジューリング](resource-aware-scheduling.md)」を参照してください。

## サービス環境
<a name="component_service_environment"></a>

サービス環境は、 がジョブ実行のために SageMaker と AWS Batch 統合する方法を定義します。サービス環境では AWS Batch 、 が SageMaker でジョブを送信および管理しながら、キューイング、スケジューリング、優先度管理機能を提供できます AWS Batch。サービス環境は、SageMaker トレーニングジョブなどの特定のサービスタイプの容量制限を定義します。容量制限は、環境内のサービスジョブで使用できる最大リソースを制御します。詳細については、「[のサービス環境 AWS Batch](service-environments.md)」を参照してください。

## サービスジョブ
<a name="component_service_job"></a>

サービスジョブは、サービス環境で実行 AWS Batch するために に送信する作業単位です。サービスジョブは、外部サービスに実際の実行を委任しながら AWS Batch、キューイングとスケジューリングの機能を活用します。たとえば、サービスジョブとして送信された SageMaker トレーニングジョブは によってキューに入れられ、優先順位が付けられますが AWS Batch、SageMaker トレーニングジョブの実行は SageMaker AI インフラストラクチャ内で行われます。この統合により、データサイエンティストと ML エンジニアは、SageMaker AI Training ワークロードに対して、 AWS Batch自動化されたワークロード管理と優先度キューイングからメリットを得ることができます。サービスジョブは、名前または ID で他のジョブを参照し、ジョブの依存関係をサポートできます。詳細については、「[のサービスジョブ AWS Batch](service-jobs.md)」を参照してください。