REST APIで取得したデータソースをBigQueryへSinkさせる
REST APIを使用してHPPTサーバから取得したデータをBigQueryへデータを転送します。

- 1.HTTPのSourceを追加
- 2.Transformの投影を使用してフィールド名を変換、抽出するフィールドの選択
- 3.転送先にBigQueryを指定して、データを転送
BigQueryテーブルの作成と使用などを参考にBIgQueryで空テーブルを作成します。
Cloud Storage ストレージ バケットの作成 などを参考にCloud Storage バケットを作成します。
転送先のBigQueryのテーブル、S3からのデータを一時保存するためのCloud Storageのバケットがすでに存在する場合は不要です。
次のように設定します。

設定完了後、「プレビュー」をクリックして実行後のプレビューが確認できます。設定に不備がない場合Completedと表示されます。

プレビューで実行結果を確認後、問題なければ「設定」を選択して完了します。
Source「HTTP」の詳しい説明は以下ドキュメントをご確認ください。
BigQueryではフィールド名に日本語が使えないため、投影という機能を使って日本語フィールドを英語フィールドに変換する処理を行います。また必要なフィールドのみの抽出も併せて行います。
Source詳細で作成したHTTPと投影をデータパイプラインで連携します。

HTTPで作成した情報が引き継がれるので次のように設定します。

- モード: 抽出
- 抽出するフィールド: ["業種一覧", "時間軸(年次)", "unit","value"]
- フィールド名置き換え : 変更前フィールド名 ["業種一覧", "時間軸(年次)"]変更後フィールド名 ["industry", "year"]
設定完了後、「プレビュー」をクリックして実行後のプレビューが確認できます。設定に不備がない場合Completedと表示されます。

プレビューで実行結果を確認後、問題なければ「設定」を選択して完了します。
Transform「投影」の詳しい説明は以下ドキュメントをご確認ください。
Transform詳細で作成した投影とGoogle BigQueryをデータパイプラインで連携します。

投影で作成した情報が引き継がれるので次のように設定します。

プロジェクトID、テーブル、バケットに事前準備で作成したプロジェクトID、テーブル名、バケット名を入力します。
設定完了後、「プレビュー」をクリックして実行後のプレビューが確認できます。設定に不備がない場合Completedと表示されます。

プレビューで実行結果を確認後、問題なければ「設定」を選択して完了します。
Sink「Google BigQuery」の詳しい説明は以下ドキュメントをご確認ください。
「名前」と「説明」を入力して「保存」を選択。

「実行」を選択します。

ジョブが問題なく完了すると「成功」となります。

下記のようにBigQuery上のtableにCSVファイルのデータが登録されていることが確認できれば完了です。
