ファイル出力ジョブ¶
概要¶
本サンプルバッチジョブは、MongoDBを全件検索し、結果をCSVファイルに出力します。
本バッチで利用する部品¶
本サンプルジョブでは以下の部品を利用します。
- KVS参照(一覧) :getkvs
- CSVデータ出力 :setcsv
注意事項¶
- 本作業はrootユーザで実行してください。
動作手順¶
1. 以下の資材をCAPサーバに展開します¶
tar xvf GetKVSAndSetCSV.tar.gz -C /tmp
2. taskDefにファイルを2つ配置します¶
以下のコマンドを実行し、taskDefをBatchControllerにコピーしてください。
cp /tmp/GetKVSAndSetCSV/taskDef/MongoToCsv_getMongo.xml /usr/local/appf/BatchController/taskDef
cp /tmp/GetKVSAndSetCSV/taskDef/MongoToCsv_setCsv.xml /usr/local/appf/BatchController/taskDef
3. csv.propertiesに設定を追加します¶
以下のコマンドを実行し、「追」が記載された行を追加する
vi /usr/local/appf/BatchController/csv.properties
1 tsetCsv=id,value,name,kind,time
追 2 mongoToCsv=key,field-1,field-2
4. BatchControllerを再起動します¶
以下のコマンドを実行し、BatchControllerを再起動してください。
systemctl restart BatchController
5. MongoDBにサンプルデータを登録します¶
- 以下のコマンドを実行し、「baas_development_XXXXXXXXX」となっているDB名を確認してください。
mongo -u admin -p admin
> show dbs
admin 0.000GB
baas_development 0.001GB
baas_development_61eaae0bf482801511c9013c 0.556GB
baas_development__SYSTEM_ 0.000GB
baas_development_fs_61eaae0bf482801511c9013c 0.000GB
- 以下のコマンドを実行し、MongoDBにドキュメントを登録します。
> use baas_development_61eaae0bf482801511c9013c
switched to db baas_development_61eaae0bf482801511c9013c
> db.test_table.insert({ 'key':'20180702', 'field-1':'data0', 'field-2':'data00' });
WriteResult({ "nInserted" : 1 })
> quit()
6. m2m_maintenance_web からバッチジョブを登録します¶
- Webブラウザでm2m_maintenance_webにログインしてください。
http://localhost:8080/m2m_maintenance_web/
- 画面右上のメニューからバッチメンテナンスを開いてください。
- 「バッチマスタメンテナンス」画面で「新規作成」を押下してください。
- 「新規登録」画面で「jobDef」ディレクトリの「batchJob_GetKVSAndSetCSV.txt」を選択し、「登録」を押下してください。
- 「バッチマスタメンテナンス」画面より「設定再読込」を押下してください。
- 「設定再読込」画面で、設定再読込を行うサーバを選択肢て「実行」を押下してください。
7. m2m_maintenance_web からジョブ実行します¶
- 「バッチマスタメンテナンス」画面より先ほど登録したバッチを選択し、「投入」を実行してください。
- 「バッチ投入」画面で、「投入サーバ」を選択し、「投入」を押下してください。
8. バッチジョブの実行結果を確認します¶
BatchControllerが動作しているサーバに以下のファイルが出力されていることを確認してください。
- /tmp/test.csv
"key","field-1","field-2"
"20180702","data0","data00"