Extracting JSON data with a loop node - 7.3

JSON

EnrichVersion
Cloud
7.3
EnrichProdName
Talend Big Data
Talend Big Data Platform
Talend Data Fabric
Talend Data Integration
Talend Data Management Platform
Talend Data Services Platform
Talend ESB
Talend MDM Platform
Talend Open Studio for Big Data
Talend Open Studio for Data Integration
Talend Open Studio for ESB
Talend Real-Time Big Data Platform
EnrichPlatform
Talend Studio
task
ジョブデザインと開発 > サードパーティーシステム > ファイルコンポーネント > JSON
データガバナンス > サードパーティーシステム > ファイルコンポーネント > JSON
データクオリティとプレパレーション > サードパーティーシステム > ファイルコンポーネント > JSON

手順

  1. Studioで、ループノードを設定せずにJSONPathを使用してファイルからJSONデータを抽出するで使用されているジョブを開いてデザインワークスペースに表示します。
  2. tFileInputJSONコンポーネントをダブルクリックして、[Basic settings] (基本設定)ビューを開きます。
  3. [Read By] (読み取り)ドロップダウンリストから[JsonPath]を選択します。
  4. [Loop Json query] (ループJsonクエリー)フィールドに、二重引用符で囲んだJSONPathクエリ式を入力して、ループの基になるノードを指定します。このサンプルでは、"$.store.goods.book[*]"です。
  5. [Edit schema] (スキーマの編集)の横の[...]ボタンをクリックし、スキーマエディターを開きます。
    以前に追加した5列を選択し、[x]ボタンをクリックしてすべて削除します。
    [+]ボタンをクリックすると、String型のbook_titlebook_category、およびbook_authorの4つのカラムとDouble型のbook_priceが追加されます。
    [OK]をクリックして、スキーマエディターを閉じます。ポップアップダイアログボックスで、[Yes]をクリックしてスキーマを後続のコンポーネントに反映します。
  6. [Mapping] (マッピング)テーブルの[JSONPath query] (JSONPathクエリー)フィールドに、二重引用符で囲んだJSONPathクエリ式を入力して、目的のデータを保持するノードを指定します。この例では、[book] (ブック)ノードの4つの子ノードに関連したJSONPathクエリー式"title""category""author""price"をそれぞれ入力します。
  7. Ctrl+Sを押し、ジョブを保存します。
  8. [F6]を押してジョブを実行します。
    前述のように、ブック情報はソースJSONデータから抽出され、コンソールのフラットテーブルに表示されます。