xData jobs のインストールおよび利用方法
概要
Talend を使用して xData のデータ処理をする際、以下のような操作が必要となるかもしれません。
- イベントデータ配信 API を使用して xData のテーブルからデータを取得する
- データローダ API を使用してデータを xData のテーブルに挿入する
これらの API は JsonRPC 規格に準拠する REST API として提供されているため、Talend から利用するのは簡単ではありません。
そこで、xData の各 API のラッパーとなるジョブ群(以下「xData ジョブ」)を用意しました。 xData ジョブをドラッグ & ドロップで作成中のジョブに配置し、必要なパラメータを指定することで API を簡単に利用できるようになります。
以下では、xData ジョブの利用方法と利用可能なジョブの一覧を記します。
xData ジョブのインポート
xData ジョブの使用を始める前に、一度下記の手順でインポートを行う必要があります。
- Talend 起動後、左のツリーで右クリックし Import items を選択します。
- Select archive file で別途配布(xData Edge 利用の場合は
xdata-edge-base-X.X/supplements
ディレクトリに存在)の talend_xdata_jobs-2.0.zip を選択し、全てのアイテムにチェックを入れ(Select All)、Finish ボタンを押します。 - インポート成功すると、xData ジョブがツリーの Job Designs の下に追加されます。
xData ジョブの利用方法 (基本)
xData ジョブの基本的な利用方法は下記のとおりです。
xData ジョブの配置と接続
- ツリーの xData ジョブ (xdata_jobs 下) から使用したいものを選び、作成中のジョブ上にドラッグ & ドロップすることで配置します。
- xData ジョブ同士、または xData ジョブと他コンポーネントを接続するには、トリガー On Component Ok を使用する必要があります。(接続元のジョブを右クリック > Trigger > On Component Ok)
パラメータの指定
- 配置した xData ジョブをクリックして選択状態にします。
- 画面下部の Component タブを選択し Context Param に必要な分だけ項目を追加します。
- 各パラメータのキーをプルダウンで選択し、それぞれ値を入力します。値の入力時には以下に留意してください。
- 文字列のパラメータは
"
で囲み、適切にエスケープする ("
->\"
,\
->\\
, etc.) - 構造化されたパラメータは JSON 文字列として入力する (例:
"{\"key\":\"value\"}"
)
- 文字列のパラメータは
xData ジョブの利用方法 (データの入出力)
テーブルからデータの取得、テーブルへのデータ挿入など、レコードデータの入出力がある xData ジョブの場合、一時的にローカルの Json 形式ファイルにデータを保存し、それを仲介として他の Talend コンポーネントとの間でデータ受け渡しをします。
そのため、以下のように Json ファイルの保存先パスを指定する必要があります。
出力データのある xData ジョブ(xdata_mapserv_eventdata など)
- 対象 xData ジョブのパラメータ output_file_path に、出力結果の Json ファイル保存先パスを指定します。
- tFileInputJSON を配置し、先ほどの xData ジョブからトリガー On Component Ok で接続します。
- tFileInputJSON では、先ほど指定した output_file_path と同一の保存先パスからデータを読み込むように設定します。
- その後 Loop Json query に "*" を入力し、Edit schema から出力データのスキーマを設定したあと、Mapping で各カラムに対応させるキー名を指定します。
入力データのある xData ジョブ(xdata_loaderwebapi_add_record など)
- 入力データを tFileOutputJSON で Json 形式ファイルとして保存します。Generate array json にチェックを入れます。
- tFileOutputJSON から対象の xData ジョブに向けて、トリガー On Component Ok で接続します。
- xData ジョブのパラメータ input_file_path パラメータに、上記で指定した Json ファイルの保存先と同一のパスを指定します。
なお、入出力に該当する xData ジョブには、後述の一覧で (input), (output) を付与しています。
xData ジョブ一覧
以下は xData ジョブの一覧となります。
名称が *_init となっているものは、同系統の他の xData ジョブを利用するために必要な接続情報 (エンドポイント、API Key, API Secret) を設定するものなので、必ず最初に一度呼び出す必要があります。
それ以外は、対応する名称の xData API のラッパーとなります。機能やパラメータの説明については各 xData API のリファレンスを参照ください。
イベントデータ配信 API (mapserv)
- xdata_mapserv_init
- xdata_mapserv_eventdata (output)
- xdata_mapserv_riskmap (output)
- xdata_mapserv_predictmap (output)
- xdata_mapserv_contour (output)
ルート探索 API (routing)
- xdata_routing_init
- xdata_routing_dijkstra (output)
データローダ API (loaderwebapi)
- xdata_loaderwebapi_init
- xdata_loaderwebapi_add_record (input)
- xdata_loaderwebapi_register_loader
- xdata_loaderwebapi_init_record
プロべナンス API (xdata_prov)
- xdata_prov_init
- xdata_prov_begin_session
- xdata_prov_begin_or_resume_session
- xdata_prov_resume_session
- xdata_prov_end_session
- xdata_prov_get_session
- xdata_prov_get_session_list
- xdata_prov_get_session_token
- xdata_prov_dump_session
- xdata_prov_commit
- xdata_prov_rollback
- xdata_prov_new_ddc
- xdata_prov_delete_ddc
- xdata_prov_resolve_ddc
- xdata_prov_get_ddcs
- xdata_prov_set_ddc
- xdata_prov_get_ddc_info
- xdata_prov_get_ddc_columns
- xdata_prov_get_ddc_records (output)
- xdata_prov_put_ddc_records (input)
- xdata_prov_exec_ddc
- xdata_prov_cancel_ddc_activity
- xdata_prov_count_ddc_records
- xdata_prov_join_ddc
- xdata_prov_merge_ddc
- xdata_prov_ddc_exists
- xdata_prov_get_ddc_activities
- xdata_prov_ddc_processing_status
- xdata_prov_get_ddc_last_activity
- xdata_prov_process
- xdata_prov_wait_ddc
- xdata_prov_get_running_processes
- xdata_prov_stop_running_process