バッチ処理でよくあるパターンとして、CSVファイルをインプットとして読み込むことが考えられますので、CSVファイルからデータを取得する際の方法をまとめました。
使用データ
今回は、政府CIOポータルで提供されているワクチン接種状況のオープンデータである、以下のCSVデータを使用したいと思います。
都道府県別累積接種回数サマリー
中身は以下のとおりです。なお、文字コードはSJISでした。
date,prefecture_code,prefecture_name,count_first_or_mid_general,count_second_or_full_general
2021-09-29,01,北海道,3165775,2597047
2021-09-29,02,青森県,822507,680631
2021-09-29,03,岩手県,752279,615774
2021-09-29,04,宮城県,1458050,1196522
2021-09-29,05,秋田県,653724,544742
:
テキストファイル入力
CSVファイルからデータを読み込むための機能として用意されているのがテキストファイル入力ステップです。
また、CSV入力ステップという機能もあり、こちらでもCSVファイルを読み込んでデータを取得することができます。
どちらもCSVファイルを読み込むことができますが、テキストファイル入力のほうが多機能なので、こちらを紹介したいと思います。
CSV入力ステップの優位性としては、テキストファイル入力よりも機能がシンプルなので、読み込み自体が多少早いということが挙げられます。
が、そこまで劇的な差は無いので、基本的にはテキストファイル入力を使用すれば問題ないかと思います。
以下、配置イメージです。
配置したテキストファイル入力ステップをダブルクリックすると以下のような画面が表示されます。
以下、読み込むファイルを指定する設定です。
続いて、全般タブを選択して全体的な設定を行います。設定はファイルにあわせて変更していきます。
最後に、各フィールドを設定します。設定完了後、OKボタンを押下することで設定が完了します。
URLの直接指定
今回はローカルのCSVファイルを指定する例を紹介しておりますが、以下のように直接URLを指定することも可能です。
さらに、今回使用したデータは、毎日更新されているようなので、以下のようにTransformationの処理を作成して、毎日自動で実行するように設定しておけば、データの自動収集が可能となります。
極端な例ですが、2ステップでデータ収集機能を持つバッチ処理を作成することができます。
データ抽出後の設定
CSVファイルからデータを抽出したあとは、文字列変換やソート、その他のデータと結合するなどのデータ加工を行って、上記のように最終的にDBへロードしたり、別の形式のファイルへ出力したりすることになります。
このあたりは、また別の記事でご紹介していきたいと思います。