日々地道に成長

思いついたことを書いていきます。

【Digdag BigQuery】Digdagのbqコマンドを使用してクエリを実行する方法

お疲れ様です。コーヒーです。

 

今回はDigdagでのBigQueryの操作についてまとめていこうと思います。

DigdagでBigQueryを操作する方法は主に下記の3つがあります。

  1. DigdagのshコマンドからBigQueryのbqコマンドを使用する
  2. Digdagのbqコマンドを使用する

今回は2つ目のbqコマンドを使用する方法について解説していきます。

Digdagのbqコマンド概要について

Digdagのbqコマンドのリファレンスは以下になります。

docs.digdag.io

まず、こちらの方法について前提としてBigQueryの[location]が[asia-northeast1]の方は使用できません

理由として、現在(2021/03/31)はlocationの指定がオプションでできないためです。

そのため、[location]が[asia-northeast1](正確にはlocationの指定が必要な場合)は別の方法の使用を検討してください。

他の方法は以下のリンクで紹介しているため、よければ確認してみてください。

 

stady-diary.hatenablog.com

 

bqコマンドの実行方法

コードの使用方法としては以下のように使用します。

bq>: queries/step1.sql

[bq >]の形でsqlを指定して使用できます。

また以下のようにdigdag配下にディレクトリを設定して使用してください。
└── digdag
 ├── xxx.dig
 └── queries
  |── xxx.sql

digdag secretsの設定

Google BigqueryのJSON形式の秘密鍵をdigdag secretsの[gcp.credential]に設定しなければbqコマンドを使用できません。

Digdag シークレットのlocalに設定する場合は以下のように設定行ってください。

cat [service account.json] |digdag secrets --local --set gcp.credential=@[service account.json]

 

 

今回は以上になります。

最後まで読んでいただきありがとうございました。