30歳からのプログラミング

30歳無職から独学でプログラミングを開始した人間の記録。

dbt

dbt の Python model を Dataproc クラスタで実行する

dbt には Python model という仕組みがある。これを使うことで SQL ではなく Python で model を書くことができ、SQL では不可能な処理が可能になる。 データウェアハウスとして BigQuery を使っている場合、 Dataproc を利用して Python model を動かすのが…

Google Cloud クライアントライブラリがアクセスするプロジェクトはどのように決まるのか

Google Cloud のクライアントライブラリを使うと API を通して Google Cloud のリソースにアクセスすることができる。 そして多くの場合どのプロジェクトのリソースにアクセスするのかを指定する必要があるが、その指定方法は複数ある。 この記事では、プロ…

gcloud auth application-default login は何をしているのか

dbt でデータウェアハウスとして BigQuery を使う際、ローカル開発においては OAuth 方式を使うことが推奨されている。 そしてその場合はgcloud auth application-default loginコマンドを実行する必要がある。 確かにこのコマンドを実行すると BigQuery と…

target や config を理解して dbt model の出力先を制御できるようになる

dbt

dbt を使おうとすると、profile や target、config、property など、様々な概念が出てくる。 それらをあまり理解できていなくても、何となく動かすことはできるかもしれない。 しかし、これらの概念を理解していないと、意図した通りに動かしたり他者が記述…