🚀

Snowflake x dbtやってみた〜シード(seed)編〜

2022/12/03に公開

dbtにはSeedという機能がありdbt経由でSnowflakeにファイルからテーブルを作成できます。
今回はSeed機能についてみていきます。

CSVファイルをダウンロードしseedディレクトリに格納する

curlでCSVファイルをダウンロードします

cd seed
curl https://dbtlearn.s3.us-east-2.amazonaws.com/seed_full_moon_dates.csv -o ./seed_full_moon_dates.csv

CSVファイルの中身を確認します

満月があった日付が記載されています。
このファイルからSnowflakeにテーブルを作成していきます。

ubuntu@dbt:~/dbtlearn/seeds$ cat seed_full_moon_dates.csv | head -10
full_moon_date
2009-01-11
2009-02-09
2009-03-11
2009-04-09
2009-05-09
2009-06-07
2009-07-07
2009-08-06
2009-09-04
ubuntu@dbt:~/dbtlearn/seeds$ 

dbt seedコマンドでSnowflakeにテーブルを作成する

ubuntu@dbt:~/dbtlearn/seeds$ dbt seed
02:24:45  Running with dbt=1.3.1
02:24:46  Found 7 models, 0 tests, 0 snapshots, 0 analyses, 303 macros, 0 operations, 1 seed file, 0 sources, 0 exposures, 0 metrics
02:24:46  
02:24:48  Concurrency: 4 threads (target='dev')
02:24:48  
02:24:48  1 of 1 START seed file dev.seed_full_moon_dates ................................ [RUN]
02:24:51  1 of 1 OK loaded seed file dev.seed_full_moon_dates ............................ [INSERT 272 in 2.75s]
02:24:51  
02:24:51  Finished running 1 seed in 0 hours 0 minutes and 5.27 seconds (5.27s).
02:24:51  
02:24:51  Completed successfully
02:24:51  
02:24:51  Done. PASS=1 WARN=0 ERROR=0 SKIP=0 TOTAL=1
ubuntu@dbt:~/dbtlearn/seeds$ 

Snowflakeで確認してみる

DEVスキーマ配下にmart_seed_full_moon_datesテーブルが作成されています。

Discussion