Skip to content

Instantly share code, notes, and snippets.

@shinyaa31
Created September 6, 2025 17:26
Show Gist options
  • Select an option

  • Save shinyaa31/416bb04e4216c1c4338c67614b6e068a to your computer and use it in GitHub Desktop.

Select an option

Save shinyaa31/416bb04e4216c1c4338c67614b6e068a to your computer and use it in GitHub Desktop.
--// Snowflake&dbt Cloud Quickstart 実践 #1〜#5「実践環境の準備・導入」 https://zenn.dev/shinyaa31/articles/85539155d9d7c6
select * from snowflake_sample_data.tpch_sf1.orders limit 100;
use role ACCOUNTADMIN;
/**------------------*/
/** ウェアハウス作成(1). */
/**------------------*/
/** 標準タイプ、サイズは最小のXS、自動再開ON、自動一時停止=60秒のウェアハウス(ステージング層テーブル用)を作成. */
CREATE OR REPLACE WAREHOUSE shinyaa31_sandbox_wh_staging
WITH
WAREHOUSE_TYPE = STANDARD
WAREHOUSE_SIZE='X-SMALL'
AUTO_RESUME = TRUE
AUTO_SUSPEND = 60
COMMENT = 'using staging layer / for dbt and Snowflake handson';
/**------------------*/
/** ウェアハウス作成(2). */
/**------------------*/
/** 標準タイプ、サイズは最小のXS、自動再開ON、自動一時停止=60秒のウェアハウス(マート層テーブル用)を作成. */
/** ウェアハウスは別途分けて作成しているがスペックはいずれも同じです。実務の場合はサイズその他スペックを変えるイメージ. */
CREATE OR REPLACE WAREHOUSE shinyaa31_sandbox_wh_mart
WITH
WAREHOUSE_TYPE = STANDARD
WAREHOUSE_SIZE='X-SMALL'
AUTO_RESUME = TRUE
AUTO_SUSPEND = 60
COMMENT = 'using mart layer / for dbt and Snowflake handson';
/**---------------*/
/** データベース作成. */
/**---------------*/
/** 今回は対象のデータベースは1つ(shinyaa31_sandbox_db)。
この配下に『生データ』『開発用』『本番環境用』スキーマを同居させる形を取る. */
CREATE DATABASE shinyaa31_sandbox_db;
/**------------*/
/** スキーマ作成. */
/**------------*/
/** 生データ用のスキーマだけ始めに作成しておく。
残りの『開発用』『本番環境用』はdbtプロジェクト作成・実演の過程で作成. */
CREATE SCHEMA raw_tpch_sf1;
/**----------------------*/
/** 生データ格納テーブル作成. */
/**----------------------*/
/** ソース用生データの準備. */
SELECT COUNT(*) FROM snowflake_sample_data.tpch_sf1.orders; // 1500000件.
SELECT COUNT(*) FROM snowflake_sample_data.tpch_sf1.lineitem; // 6001215件
/** 任意のスキーマ配下に生データが投入された、という前提で、
ハンズオンで利用していたテーブルを上記で作成したスキーマ配下に実データ入りテーブルとして用意. */
/** ordersテーブル */
CREATE OR REPLACE TABLE shinyaa31_sandbox_db.raw_tpch_sf1.orders
AS
SELECT * FROM snowflake_sample_data.tpch_sf1.orders;
/** lineitemテーブル */
CREATE OR REPLACE TABLE shinyaa31_sandbox_db.raw_tpch_sf1.lineitem
AS
SELECT * FROM snowflake_sample_data.tpch_sf1.lineitem;
/** nationテーブルはseed機能を通じてそれぞれ(開発環境・本番環境)の環境で用意されるのでここでは作らない. */
/** 投入データ確認. */
SELECT COUNT(*) FROM shinyaa31_sandbox_db.raw_tpch_sf1.orders; // 1500000件.
SELECT COUNT(*) FROM shinyaa31_sandbox_db.raw_tpch_sf1.lineitem; // 6001215件.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment