Data Integrationジョブでマップを作成
JSONファイルをCSVに変換するジョブを作成します。
このタスクについて
この例では、さまざまなタイプの電話番号の配列といった顧客情報が含まれているJSONファイルがあります。目標は、情報の各部分ごとにカラムを持つシンプルなCSVファイルに変換することです。入力には次のJSONサンプルを使います:
{
"customers":[
{
"firstName":"John",
"lastName":"Smith",
"age":25,
"address":{
"streetAddress":"21 2nd Street",
"city":"New York",
"state":"NY",
"postalCode":"10021"
},
"phoneNumber":[
{
"type":"home",
"number":"202-555-0109"
},
{
"type":"mobile",
"number":"202-555-0181"
}
]
},
{
"firstName":"Jane",
"lastName":"Doe",
"age":31,
"address":{
"streetAddress":"19 4th Street",
"city":"New York",
"state":"NY",
"postalCode":"10021"
},
"phoneNumber":[
{
"type":"home",
"number":"202-555-0178"
},
{
"type":"mobile",
"number":"202-555-0123"
},
{
"type":"work",
"number":"202-555-0163"
}
]
}
]
}
Data Integrationジョブの入力ストラクチャーを作成
サンプルドキュメントをベースにJSONストラクチャーを作成し、マッピングの入力として使います。
Before you begin
About this task
階層マッパーでストラクチャーを作成すれば、ネストしたレベルが複数あるファイルを扱う場合に特に便利です。ストラクチャーは、IntegrationパースペクティブのリポジトリーにあるMetadataノードから直接作成することも、マッピングパースペクティブの[Data Mapper]タブから作成することもできます。
詳細は、ストラクチャーを使って作業をご覧ください。
Procedure
- [Hierarchical Mapper] (階層マッパー)ノードを展開して[Structure] (ストラクチャー)を右クリックし、 をクリックします。
- ウィザードが開いたら、[Import a structure definition] (ストラクチャー定義をインポート)を選択して[Next] (次へ)をクリックします。
- [JSON Sample Document] (JSONサンプルドキュメント)を選択して[Next] (次へ)をクリックします。
-
使用するファイルを選択します:
- ワークスペースで既存のリソースを選択します。
- ローカルファイルをインポートします。
- このファイルにURLを入力します。
- [Next] (次へ)をクリックします。
- フォルダーを選択して新しいストラクチャーの名前を入力し、[Next] (次へ)をクリックします。
- [Finish] (終了)をクリックします。
Results
Data Integrationジョブを作成
tFileInputRaw、tHMap、tFileOutputDelimitedを持つシンプルなジョブを作成します。
Procedure
Results
Data Integrationジョブ用にエレメントをマッピング
前のステップで生成したマップを設定します。
Procedure
Results
出力をテストする場合は[Test Run] (テスト実行)オプションを使います。その後、ジョブに戻って実行します。サンプル入力データを使った出力は次のようになります:
John,Smith,25,21 2nd Street,New York,NY,10021,202-555-0109,202-555-0181,
Jane,Doe,31,19 4th Street,New York,NY,10021,202-555-0178,202-555-0123,202-555-0163