こんにちは、エクスチュアの酒井です。
今回は、TreasureDataからBigQueryへのデータの移動(コピー)の仕方についてご紹介します。
==================================
①TreasureDataとBigQueryを連携させる
1-1 GCPのProjectIDを取得する
エクスポートを行うGCPプロジェクトの管理画面にアクセスし、ProjectIDをコピーする。
1-2 GCPのJSON Credentialを取得する
GCPのサービス選択タブより、「APIとサービス」→「認証情報」にアクセス
認証情報を作成から「サービスアカウントキー」へ進み、「新しいサービスアカウント」を選択し、以下のように設定する
※ここで作成したJSONキーは厳重に保管ください。
以上でBigQuery側の設定は完了です。
②TrasureData上でエクスポート設定を行う
TreasureDataの左メニュー画面で、「Connection」を選択しBigQueryのコネクタを選択する。
Authentication modeを「JSON keyfile」で選択し、1-2で取得したJSON認証情報を赤枠内に入力。
CONTINUE押下後、名前をつけてコネクタを保存する。
※DLしたJSONはメモ帳、クロームで開くことができます。
以上で、環境設定が完了したので本題のデータ引っ越し作業に移ります。
③BigQueryへデータを移動させる
移したいデータセットで、クエリを入力後、画面右上の「Output results」にチェック。
作成したいコネクタを選択し、下記の情報を入力します(グレー文字は任意)
新しくBigQueryにテーブルを作成する際には、赤枠内でスキーマの設定が必要になりますが注意点があります。
それは、
①SELECTのクエリ結果で出てくるカラムと、同じ順番でスキーマの設定をしなければならない
②SELECTのクエリ結果で出てくるカラムと、設定するスキーマの個数は同じである必要がある
です。
例えば、クエリでA・B・Cというカラムが結果で出てくるとしたら
[{“name”:”A”,”type”:”STRING”,”mode”:”REQUIRED”},{“name”:”B”,”type”:”STRING”,”mode”:”REQUIRED”},{“name”:”C”,”type”:”STRING”,”mode”:”REQUIRED”}]
となります。A→B→Cの順番でスキーマ設定しなければなりません。
尚、ここではスキーマを”REQUIRED”としていますがデータセットにNULLが含まれる際は”NULLABLE”にしないとエラーとなります。
ですので、BigQueryのテーブルのスキーマに合わせ変更してください。
参照:https://cloud.google.com/bigquery/docs/schemas?hl=ja
以上の設定が完了したら、右上の「Run」を選択し気長に待ちましょう。
Jobが完了し、BigQueryにデータが移されていたら完成です。
————-
エクスチュアは国内では希少なTableau Certified Professionalも在籍するTableauのパートナー企業です。
また、Google Cloud Platform、Adobe Marketing Cloudといったマーケティングテクノロジーに精通したスタッフが、
デジタルマーケティングからビッグデータ分析まで統合的にサポートします。
お問い合わせはこちらからどうぞ
ブログへの記事リクエストはこちらまで