概要
会社でTreasureDataをデータレイクとして使っているのでBigQueryからのデータインポートを試してみます。
ドキュメントを参考に用意されたデータコネクタを利用します。
準備
TreasureDataのコネクタ設定の準備として、必要なものは以下
- BigQueryのJSON keyfile
- BigQueryのプロジェクトID
BigQuery側でインポート対象のテーブルを用意
サービスアカウントキーを作成
JSON keyfileを発行するためサービスアカウントキーを作成します。
手順通り実行していきます。
-
GCP Console で [IAM と管理] ページを開きます。
-
[IAM と管理] ページを開く
-
プロジェクトを選択し、[続行] をクリックします。
-
左側のナビゲーション メニューで [サービス アカウント] をクリックします。
-
キーを作成するサービス アカウントを見つけ、その行の詳細ボタン ︙ をクリックして、[キーを作成] をクリックします。
-
[キーのタイプ] を選択して、[作成] をクリックします。
test用に作成します。
TDのドキュメントにあるロールは注意がいりそうです。
とりあえず編集者としてロールをつけてサービスアカウントを作成
続いて、手順のようにキーをJSONとして作成するとファイルとしてダウンロードされました。
これでBigQuery側の準備はできました。
TreasureDataでのコネクタ設定
さきほどのJSON keyfileの入力が求められますね。
入力してContinueを押すと、認証情報が作成されます。
続いて「New Source」よりコネクタを作成します。
見覚えのあるガイドで使ったサンプルクエリを使ってみます。
(その他の項目は、特に変更なしです。)
プレビューも見えます。
カラム設定も今回は問題なさそうなのでそのまま進めます。
続いてインポート先の情報設定です。
ここは必要に応じて新たに作成したり、既存のテーブルに追加したりが選べます。
今回は新規のテーブルを作ってみます。
スケジュール設定は不要なのでスキップ
最後に名前をつけて実行します。
ログを見ながら少し待っているとWeb通知が届き、どうやら正常に完了したようです。
テーブルを見てみましょう。
無事取り込めてますね。
気になっているお金のところ
無料トライアルのクレジット残額を見ていただけだと、このインポート実行では変化なし...
ここはもう少し大きなクエリを実行してみたりしてどうなるのか検証が必要そう。
お片付け
やりたいことは試せたのでお片付けします。
TreasureData側
- 作成したテーブル
- BQ用のコネクタ
- BQ用の認証情報
BigQuery側 - 作成したデータセット・テーブル
- テスト用のサービスアカウント