はじめに Azure Batch はオートスケール可能な仮想マシン (VM) 上で任意のスクリプトやアプリケーションを実行できる便利なサービスです。VM に JVM (Java Virtual Machine) がインストールされていれば Java アプリケーションも実行することができます。 公式ドキュメントでは .NET や Python アプリケーションについてのクイックスタートがありますが Java のドキュメントは現状無いため、本記事では、Azure Batch 上で Java アプリケーションを実行する流れを簡単にまとめたいと思います。 大筋は以下のクイックスタートの記事に沿っていますので、合わせてご覧ください。 Azure クイックスタート: Azure portal で最初の Batch ジョブを実行する - Azure Batch | Microsoft Docs Batc
Batch のタスク依存関係を使用し、コンピューティング ノードで 1 つ以上の親タスクが完了した後に実行されるようにスケジューリングされたタスクを作成します。 たとえば、並列実行される複数の独立したタスクを使って 3D ムービーの各フレームをレンダリングするジョブを作成できます。 最後のタスクでは、すべてのフレームが正常にレンダリングされた後にのみ、そのレンダリング済みのフレームをマージしてムービーを完成させます。 つまり、最後のタスクは、その前の親タスクに依存します。 タスクの依存関係は、たとえば次のようなシナリオで役立ちます。 クラウドでの MapReduce 形式のワークロード。 有向非巡回グラフ (DAG) としてデータ処理タスクを表すことのできるジョブ。 各タスクが次のタスクの開始前に完了している必要がある、レンダリング前およびレンダリング後プロセス。 下流のタスクが上流タスク
はじめに コンテナにロジックを閉じ込め任意のインスタンスで動かすことができるAWS Batchが便利で使っていたのですが、今の案件はAzureでしたのでAzure Batchを使ってみました。これもコンセプトはAWSと同じです。 Azureは相変わらずドキュメントやQiitaなどにもあまり記事がないので少しでもお役に立てれば幸いです。 ちなみに今回JavaSDKで実装していますが、画面上からバッチの定義を行ったり他の言語のSDKを使った場合も同じ設定値に設定することで動かすことができますので参考になるかと思います。 AzureBatchでは任意のプログラム(Shellも)を、指定された大きさのインスタンスで動かすことが可能なサービスです。 AWS Batchのようにコンテナ内のプログラムを動かすことが可能です。ちなみにAWS(※)ではCloudWatchEventsを使ってスケジュールさせ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く