Hadoop MapReduce ジョブの実行

[Hadoop MapReduce ジョブの実行] アクティビティでは、関連する JAR ファイルをマッピングすることにより、Hadoop クラスタ上で任意の MapReduce ジョブを実行できます。このアクティビティは、Spectrum™ Big Data Quality SDK の MapReduce ジョブまたは任意の外部 MapReduce ジョブを実行するために使うことができます。

注: MapReduce ジョブの実行がエラーになった場合、ジョブ実行のステータスがエラー メッセージの一部として表示されます。
フィールド 説明
Hadoop サーバー 設定された Hadoop サーバーのリスト。

Management Console から HDFS ファイル サーバーをマッピングする方法については、『管理ガイド』を参照してください。

Jar パス 実行する Hadoop MapReduce ジョブに関連する JAR ファイルのパス。
注: JAR は、外部クライアント側または Spectrum サーバー上に存在する必要があります。Hadoop クラスタに配置することはできません。
ドライバ クラス 次のいずれかを選択します。
既定値

ジョブのクラス名引数を入力するだけで外部ジョブを実行するには、[デフォルト] を選択します。

[デフォルト] を選択すると、[クラス名] フィールドと [引数] フィールドが表示されます。

設定
いずれかの外部ジョブの追加のジョブ プロパティを入力するか、Spectrum Big Data Quality SDK ジョブのいずれか 1 つを実行するには、[設定] を選択します。

[設定] を選択すると、[ジョブの種類] フィールドが表示されます。

ジョブの種類 次のいずれかを選択します。
Spectrum
Spectrum Big Data Quality SDK ジョブのいずれか 1 つを実行するには、[Spectrum] を選択します。

[Spectrum] を選択すると、[Spectrum ジョブ] フィールドが表示されます。

汎用
いずれかの外部ジョブの追加のジョブ プロパティを指定するには、[汎用] を選択します。
Spectrum ジョブ Spectrum Big Data Quality SDK ジョブの一覧から Spectrum ジョブを 1 つ選択します。
必要な Spectrum ジョブを選択すると、次のようになります。
  1. [ジョブ名][クラス名][引数] の各フィールドは自動的に設定されます。

    [クラス名] フィールドを除き、自動設定されたフィールドはすべて、必要に応じて編集できます。

    重要: 選択した Spectrum ジョブに対し、自動設定された [クラス名] を編集してはいけません。変更すると、ジョブは実行できません。
  2. [プロパティ] グリッドには、選択した Spectrum ジョブの必須設定プロパティがデフォルト値とともに自動的に設定されます。

    必要に応じて、他のプロパティを追加またはインポートしたり、自動設定されたプロパティを変更したりできます。

クラス名 ジョブのドライバ クラスの完全修飾名。
引数 スペースで区切られた引数のリスト。これらは実行時にドライバ クラスに渡されて、ジョブの実行に使用されます。

例を次に示します。

23Dec2016 /home/Hadoop/EYInc.txt
  1. これらの変数を引数リストの引数として渡すことができます。ソース ステージまたはプロセス フローの現在のステージで実行時の値を受け取るように、引数を定義します。

    例えば、プロセス フローの前ステージの出力で変数 SalesStartRangeが定義されていれば、次のように指定して、この変数を ${SalesStartRange} として他の必要な変数と共に含めることができます。

    23Dec2016 /home/Hadoop/EYInc.txt ${SalesStartRange}
  2. 引数名にスペースが含まれる場合は、変数全体を二重引用符で囲みます。

    例えば、 "/home/Hadoop/Sales Records"です。

Spectrum Big Data Quality SDK ジョブ - 引数:

Spectrum Big Data Quality SDK MapReduce ジョブを実行するには、各種設定ファイルを引数リストとして渡します。各引数キーに、1 つの設定プロパティ ファイルのパスが指定できます。各ファイルには、複数の設定プロパティが含まれます。

設定プロパティの引数リストの構文は以下のとおりです。

[-config <Path to configuration file>] [-debug] [-input <Path to input configuration file>] [-conf <Path to MapReduce configuration file>] [-output <Path of output directory>]

例えば、MapReduce MatchKeyGenerator ジョブの場合は次のようになります。

-config /home/hadoop/matchkey/mkgConfig.xml -input /home/hadoop/matchkey/inputFileConfig.xml -conf /home/hadoop/matchkey/mapReduceConfig.xml -output /home/hadoop/matchkey/outputFileConfig.xml
注: 同じ設定プロパティ キーが [引数] フィールドと [プロパティ] グリッドの両方で指定されており、両者が異なる設定ファイルを参照している場合は、[プロパティ] グリッドで指定されているファイルがこのプロパティに対して適用されます。

設定プロパティのサンプルは、Big Data Quality SDK に付属しており、<Big Data Quality bundle>\samples\configurationにあります。

[全般] タブ

フィールド 説明 要件:
ジョブ名 Hadoop MapReduce ジョブの名前。 必須
入力パス ジョブの入力ファイルのパス。 必須
出力パス ジョブの出力ファイルのパス。 必須
出力の上書き 指定した出力パスが既に存在する場合にそれを上書きするかどうかを指定します。
注: このチェック ボックスをオフのままにすると、設定された出力パスが既に存在することが実行時に判明した場合に、Hadoop から例外がスローされ、プロセス フローが中止されます。
オプション
Mapper クラス ジョブの Mapper 機能を処理するクラスの完全修飾名。 必須
Reducer クラス ジョブの Reducer 機能を処理するクラスの完全修飾名。 オプション
Combiner クラス ジョブの Combiner 機能を処理するクラスの完全修飾名。 オプション
Partitioner クラス ジョブの Partitioner 機能を処理するクラスの完全修飾名。 オプション
リデューサー数 MapReduce ジョブを実行するために使用するリデューサー数。 オプション
入力フォーマット 入力データのフォーマット。 必須
出力フォーマット 出力データのフォーマット。 必須
出力キー クラス 出力キー/値ペアのキーのデータ タイプ。 必須
出力値クラス 出力キー/値ペアの値のデータ タイプ。 必須

[プロパティ] タブ

必要なジョブを実行するために追加のプロパティを指定する場合は、このタブでプロパティと値のペアを必要なだけ定義します。必要なプロパティを 1 つずつ直接グリッドに追加できます。

または、[インポート] をクリックしてファイルからプロパティをインポートします。各プロパティ ファイルの場所に移動し、XML 形式のファイルを選択します。インポートされたファイルに含まれるプロパティがグリッドにコピーされます。プロパティ ファイルは XML 形式で、次の構文に従う必要があります。
<configuration>
    <property>
        <name>key</name>
        <value>some_value</value>
        <description>A brief description of the 
            purpose of the property key.</description>
    </property>
</configuration>

Hadoop プロパティ ファイル mapred.xml を直接インポートするか、上記の XML 形式で独自のファイルを作成することができます。

注:
  1. 同じプロパティがこの場所と Management Console で定義されている場合、この場所で定義された値が Management Console で定義された値に優先します。
  2. 同じプロパティがグリッド内とインポートされたプロパティ ファイル内にある場合は、ファイルからインポートされた値がグリッド内の同じプロパティの既存の値を上書きします。
  3. 必要であれば、複数のプロパティ ファイルを 1 つずつインポートすることができます。インポートされた各ファイルからプロパティがグリッドに追加されます。
  4. プロパティ ファイルが Spectrum™ Technology Platformサーバー上に存在することを確認してください。
  5. <description>タグは、設定プロパティ ファイル内の各プロパティ キーに対して省略可能です。

[依存関係] タブ

このタブでは、ジョブの実行に必要な一連の入力ファイルと Jar ファイルを追加します。

ジョブの実行が終わると、ここで追加した参照ファイルと参照 Jar ファイルが、ジョブの分散キャッシュから使用できるようになります。

参照ファイル
ジョブの実行に必要な各種のファイルを追加するには、[追加] をクリックし、ローカル システムまたはクラスタ上のそれぞれの場所に移動し、特定のファイルを選択します。

リストに追加したファイルを削除するには、そのファイルを選択し、[削除] をクリックします。

参照 Jar
ジョブの実行に必要な Jar ファイルを追加するには、[追加] をクリックし、ローカル システムまたはクラスタ上のそれぞれの場所に移動し、特定の Jar ファイルを選択します。

リストに追加したファイルを削除するには、そのファイルを選択し、[削除] をクリックします。