256 を超えるステップをクラスターに追加する - Amazon EMR

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

256 を超えるステップをクラスターに追加する

AMI 3.1.1 (Hadoop 2.x) 以降および AMI 2.4.8 (Hadoop 1.x) 以降、長時間稼働するクラスターが存続する間は、送信できるステップの数に制限はありません。ただし、どの時点でも保留中または実行中になるステップは、256 のみです。それ以前の AMI バージョンの場合は、クラスターで処理できるステップの総数が 256 に制限されます (Hive のインストールや Pig のインストールなどのシステムステップを含む)。詳細については、「クラスターへの作業の送信」を参照してください。

3.1.1 および 2.4.8 より前の AMI バージョンで 256 ステップの制限を回避するためには、いくつかの方法を使用できます。

  1. 各ステップから Hadoop に複数のジョブを送信する。これによって、3.1.1 および 2.4.8 よりも前の AMI バージョンにおけるステップ数が無制限になるわけではありませんが、256 を超えるステップの数が決まっている場合には最も簡単な方法です。

  2. 長時間稼働クラスター上のステップ内で実行されるワークフロープログラムを記述し、ジョブを Hadoop に送信する。ワークフロープログラムでは、次のいずれかの操作を実行できます。

    • Amazon SQS キューをリッスンして、実行すべき新しいステップに関する情報を受け取る。

    • 実行すべき新しいステップに関する情報を含むファイルがないか、Amazon S3 バケットを定期的にチェックする。

  3. で実行されるワークフロープログラムを記述します。Amazon EC2インスタンスを Amazon EMR 外で作成し、SSH を使用して長時間稼働クラスターにジョブを送信します。

  4. SSH 経由で長時間稼働クラスターに接続し、Hadoop API を使用して Hadoop ジョブを送信します。詳細については、http://hadoop.apache.org/docs/current/api/org/apache/hadoop/mapred/JobClient.html を参照してください。

  5. マスターノードに接続し、クラスターにジョブを送信します。SSH クライアント (PuTTY や OpenSSH など) を使用して接続し、手動でジョブをクラスターに送信するか、sshサブコマンドを実行して AWS ジョブの接続と送信の両方を実行します。マスターノードとの SSH 接続を確立する方法の詳細については、「SSH を使用してマスターノードに接続する」を参照してください。インタラクティブに Hadoop ジョブを送信する方法の詳細については、「Hadoop ジョブのインタラクティブな送信」を参照してください。