Apache Spark BatchのtJavaRowプロパティ
これらのプロパティは、Spark Batchジョブのフレームワークで実行されているtJavaRowを設定するために使われます。
Spark BatchのtJavaRowコンポーネントは、カスタムコードファミリーに属しています。
このフレームワークのコンポーネントは、すべてのサブスクリプションベースのビッグデータ対応のTalend製品およびTalend Data Fabricで使用できます。
基本設定
[Schema] (スキーマ)と[Edit Schema] (スキーマを編集) |
スキーマとは行の説明のことです。処理して次のコンポーネントに渡すフィールド(カラム)数を定義します。Sparkジョブを作成する場合、フィールドの命名時は予約語のlineを避けます。 |
|
[Built-in] (組み込み): そのコンポーネントに対してのみスキーマを作成し、ローカルに保管します。 |
|
[Repository] (リポジトリー): スキーマは作成済みで、リポジトリーに保管されています。さまざまなプロジェクトやジョブデザインで再利用できます。 再使用するスキーマに整数またはファンクションのデフォルト値が指定されている場合は、これらのデフォルト値を引用符で囲まないようにご注意ください。引用符で囲まれている場合は手動で削除します。 詳細は、テーブルスキーマを取得をご覧ください。 |
スキーマを変更するには[Edit schema] (スキーマを編集)をクリックします。現在のスキーマがリポジトリータイプの場合は、3つのオプションを利用できます。
ジョブで接続している先行コンポーネントからスキーマを取得するためには、[Sync columns] (カラムを同期)をクリックします。 このコンポーネントの入力スキーマと出力スキーマは異なる場合があります。 |
|
[Map type] (マップタイプ) |
書き込む必要のあるマップ変換の種類を選択します。これでコンポーネントは、メソッドを自動的に選択し、カスタムコードで使用する変数を宣言できます。 使用できる種類は次のとおりです。
これらのメソッドについては、https://spark.apache.org/docs/latest/api/java/index.htmlでJava APIに関するApache Sparkのドキュメンテーションをご覧ください。 |
[Generate code] (コードの生成) |
[Code] (コード)フィールド内にコードを自動生成するには、このボタンをクリックして、入力スキーマのカラムを出力スキーマのカラムにマッピングします。この生成によって、スキーマの内容は何も変更されません。 生成されたサンプルコードは、事前定義されたどの変数が入力および出力RDDに対するものであるか、また、それらの変数をどう使用したらよいかを示します。 |
[Code] (コード) |
[Map type] (マップの種類) ドロップダウンリストから選択したメソッドのカスタムBodyを書き込みます。入力スキーマと出力スキーマを使用して、入力および出力RDDレコードのカラムを管理する必要があります。このカスタムコードは、RDDレコード内で行ごとに適用されます。 たとえば、入力スキーマにuserカラムが含まれていれば、input.user変数を使用して各入力レコードのuserカラムを取得する必要があります。 カスタムコードの書き込みに使用できる変数については、このフィールドに表示されるデフォルトコメントをご覧ください。 |
詳細設定
[Import] (インポート) |
インポートするJavaコード、および必要に応じて[Basic settings] (基本設定)ビューの[Code] (コード)フィールドで使用されている外部ライブラリーを入力します。 |
グローバル変数
グローバル変数 |
ERROR_MESSAGE: エラーが発生した時にコンポーネントによって生成されるエラーメッセージ。これはAfter変数で、文字列を返します。この変数はコンポーネントにこのチェックボックスが存在し、[Die on error] (エラー発生時に強制終了)がオフになっている場合のみ機能します。 Flow変数はのコンポーネントの実行中に機能し、After変数はコンポーネントの実行後に機能します。 フィールドまたは式に変数を入力する場合は、Ctrl + スペースを押して変数リストにアクセスし、使用する変数を選択します。 変数の詳細は、コンテキストと変数を使用をご覧ください。 グローバル変数(tFileRowCountのCOUNTなど)を[Code] (コード)ボックスに入力するには、コード全体、つまり、((Integer)globalMap.get("tFileRowCount_COUNT"))を手動で入力する必要があります。 |
使用方法
使用ルール |
このコンポーネントは中間ステップとして使用されます。 このコンポーネントは、所属するSpark Batchのコンポーネントのパレットと共に、Spark Batchジョブを作成している場合にだけ表示されます。 特に明記していない限り、このドキュメンテーションのシナリオでは、標準ジョブ、つまり従来の Talend Data Integrationジョブだけを扱います。 |
[Spark Connection] (Spark接続) |
[Run] (実行)ビューの[Spark configuration] (Spark設定)タブで、ジョブ全体でのSparkクラスターへの接続を定義します。また、ジョブでは、依存jarファイルを実行することを想定しているため、Sparkがこれらのjarファイルにアクセスできるように、これらのファイルの転送先にするファイルシステム内のディレクトリーを指定する必要があります。
この接続は、ジョブごとに有効になります。 |
[Limitation] (制限事項) |
SparkとJava言語の知識が必要です。 |