メイン コンテンツをスキップする 補完的コンテンツへスキップ

tExtractJSONFields MapReduceプロパティ(非推奨)

Availability-note非推奨

これらのプロパティは、MapReduceジョブのフレームワークで実行されているtExtractJSONFieldsを設定するために使われます。

MapReducetExtractJSONFieldsコンポーネントは、変換処理ファミリーに属しています。

このフレームワーク内のコンポーネントは、ビッグデータ対応のTalend 製品すべて、およびTalend Data Fabricで使用できます。

MapReduceのフレームワークは、Talend 7.3以降非推奨となります。Apache SparkのTalendジョブを使って、インテグレーションタスクを実行します。

基本設定

[Property type] (プロパティタイプ)

[Built-in] (組み込み)[Repository] (リポジトリー)のいずれかです。

 

[Built-In] (組み込み): 一元的に保存されるプロパティデータはありません。

 

[Repository] (リポジトリー): プロパティが保存されているリポジトリーファイルを選択します。

[Schema] (スキーマ)[Edit Schema] (スキーマを編集)

スキーマとは行の説明のことです。処理して次のコンポーネントに渡すフィールド(カラム)数を定義します。Sparkジョブを作成する場合、フィールドの命名時は予約語のlineを避けます。

スキーマを変更するには[Edit schema] (スキーマを編集)をクリックします。現在のスキーマがリポジトリータイプの場合は、3つのオプションを利用できます。

  • [View schema] (スキーマを表示): スキーマのみを表示する場合は、このオプションを選択します。

  • [Change to built-in property] (組み込みのプロパティに変更): ローカルで変更を行うためにスキーマを組み込みに変更する場合は、このオプションを選択します。

  • [Update repository connection] (リポジトリー接続をアップデート): リポジトリーに保存されているスキーマに変更を加え、変更後にそのコンテンツをすべてのジョブにプロパゲートするかどうかを決める場合は、このオプションを選択します。変更を現在のジョブにのみ反映する場合は、変更後、[No] (いいえ)を選択し、[Repository Content] (リポジトリーコンテンツ)ウィンドウで再びこのスキーマのメタデータを選択します。

 

[Built-in] (組み込み): そのコンポーネントに対してのみスキーマを作成し、ローカルに保管します。

 

[Repository] (リポジトリー): スキーマは作成済みで、リポジトリーに保管されています。さまざまなプロジェクトやジョブデザインで再利用できます。

[Read By] (読み取り)

ファイル内のJSONデータを抽出する方法を選択します。

  • Xpath: XPathクエリーに基づいてJSONデータを抽出します。

  • JsonPath: JSONPathクエリーに基づいてJSONデータを抽出します。より良いパフォーマンスを得るためには、JSONPathでデータを読み取ることをお勧めします。

JSONフィールド

抽出されるJSONフィールドのリスト。

ループJasonpathクエリー

ループのベースとなるノードのJsonpathまたはXPathを入力します。

[Read By] (読み取り)ドロップダウンリストから[Xpath]を選択した場合は、代わりに[Loop Xpath query] (Xpathクエリーをループ)フィールドが表示されます。

[Mapping] (マッピング)

スキーマで定義されたカラムを対応するJSONノードにマップするには、このテーブルを完成させてください。

  • [Column] (カラム): [Column] (カラム)セルには、定義されたスキーマカラム名が自動的に入力されます。

  • Json query/JSONPath query(Jsonクエリー/JSONPathクエリー): 目的のデータを保持するJSONPathノードを指定します。JSONPath式の詳細は、http://goessner.net/articles/JsonPath/をご覧ください。

    このカラムは、[Read By] (読み取り)リストからJsonPathが選択されている場合のみ利用できます。

  • [XPath query] (XPathクエリー): 目的のデータを保持するXPathノードを指定します。

    このカラムは、[Read By] (読み取り)リストからXpathが選択されている場合のみ利用できます。

  • [Get Nodes] (ノードを取得): このチェックボックスを選択すると、すべてのノードのJSONデータを抽出、または特定のノードの横にあるチェックボックスをオンにしてそのノードのデータを抽出します。

    このカラムは、[Read By] (読み取り)リストからXpathが選択されている場合のみ利用できます。

  • [Is Array]: 抽出するJSONフィールドがオブジェクトではなく配列の場合は、このチェックボックスを選択します。

    このカラムは、[Read By] (読み取り)リストからXpathが選択されている場合のみ利用できます。

[Die on error] (エラー発生時に強制終了)

このチェックボックスを選択すると、エラー発生時にジョブの実行が停止されます。

エラーの発生した行をスキップし、エラーが発生していない行の処理を完了するには、このチェックボックスをオフにします。エラーをスキップしたら、[Row] (行)> [Reject] (リジェクト)リンクを使用してエラーの発生した行を収集できます。

詳細設定

[Encoding] (エンコーディング)

リストからエンコーディングを選択するか、[CUSTOM] (カスタム)を選択して、手動で定義します。このフィールドはデータベースデータ処理の必須フィールドです。サポートされるエンコーディングは、使用しているJVMに応じて異なります。詳細は、https://docs.oracle.comをご覧ください。

グローバル変数

グローバル変数

ERROR_MESSAGE: エラーが発生した時にコンポーネントによって生成されるエラーメッセージ。これはAfter変数で、文字列を返します。この変数はコンポーネントにこのチェックボックスが存在し、[Die on error] (エラー発生時に強制終了)がオフになっている場合のみ機能します。

NB_LINE: 入力コンポーネントによって読み取られた行の数、または出力コンポーネントに転送された行の数。これはAfter変数で、整数を返します。

Flow変数はのコンポーネントの実行中に機能し、After変数はコンポーネントの実行後に機能します。

フィールドまたは式に変数を入れるには、Ctrl + スペースを押して変数リストにアクセスし、リストから使用する変数を選択します。

変数の詳細は、Studio Talendユーザーガイドをご覧ください。

使用方法

使用ルール

Talend Map/Reduceジョブでは、このコンポーネントは、中間ステップとして使用されますが、併用する他のコンポーネントもMap/Reduceのコンポーネントにする必要があります。Hadoopで直接実行できるネイティブMap/Reduceコードを生成します。

[Run] (実行)ビューの[Hadoop Configuration] (Hadoop設定)タブを使用して、ジョブ全体で特定のHadoopディストリビューションに対する接続を定義する必要があります。

Talend Map/Reduceジョブの詳細は、Talend Big Data入門ガイドTalend Map/Reduceジョブを作成、変換、設定する方法のセクションをご覧ください 。

本書では、特に明記されていない限り、標準ジョブ、つまり従来の Talend データ統合ジョブ、およびMap/Reduce以外のジョブのシナリオで説明しています。

このページは役に立ちましたか?

このページまたはコンテンツに、タイポ、ステップの省略、技術的エラーなどの問題が見つかった場合は、お知らせください。改善に役立たせていただきます。