Upgrade to Pro — share decks privately, control downloads, hide ads and more …

第4回Snowflake Rookies Camp

Avatar for Rookies Camp Rookies Camp
July 11, 2026
8

第4回Snowflake Rookies Camp

Avatar for Rookies Camp

Rookies Camp

July 11, 2026

Transcript

  1. この会で目指すこと この会で目指すこと この会で目指すこと このコミュニティは、一歩ずつ一緒に成長する場です。 参 加 者 同 士 の

    悩 み 共 有 実 用 的 な T i p s の 紹 介 小 さ な 成 功 体 験 の 積 み 重 ね 仲 間 と の つ な が り を 作 る
  2. そんな皆さんを そんな皆さんを 心から歓迎します! 心から歓迎します! 小さな疑問も大歓迎! 小さな疑問も大歓迎! #snowflake-rookies-camp でも受け付けています #snowflake-rookies-camp でも受け付けています

    みんなで助け合いながら、 みんなで助け合いながら、 新しい学びを一緒に始めましょう! 新しい学びを一緒に始めましょう! そんな皆さんを 心から歓迎します! 小さな疑問も大歓迎! #snowflake-rookies-camp でも受け付けています みんなで助け合いながら、 新しい学びを一緒に始めましょう!
  3. 幹事メンバー 幹事メンバー 幹事メンバー m.fujita naoki_yokozawa(横澤 直樹) hue(hiroki uetake) Kaori(KaNi)お休み中 snowflakeに

    業務で関わり始めて1年程立ちますが、 まだまだ初心者なので 皆様と一緒にスキルアップしたいです! 日頃はSIerとしてお客様のデータ活用基盤 構築のPMとしてご支援しています。 Snowflake歴は半年ほどで、3月に SnowPro Advanced:Architectの資格を取 得しました。また、4/2に『Snowflake Squad』に選出いただきました。 これからも勉強会を盛り上げていければ と思いますので一緒に楽しんでいきまし ょう!! Prepper Open Data Bankの担当を始め て半年。皆さまと一緒に楽しく勉強した い!ずっと続けていきたい! Snowflakeを触ったことがない方がコミュ ニティに参加することで業務で活用でき るようになったらいいなという思いでこ ちらのユーザーグループを立ち上げまし た。 Snowflake初心者です。 業務は主にTableauを中心にCoE活動を行ってい ます。 ユーザー会を通じて、皆さんと一緒に成長して いきたいです!
  4. 幹事メンバー 幹事メンバー 幹事メンバー Hiroki とうないじんや 某カオスな会社でコンサルタントをし ております。 Snowflake歴は1年ほどで初心者です が、質の高いコンテンツを提供できる ように頑張ります!!

    Snowflakeに触れ始めて1年ほど経ちます が、 「もっと知っておきたいな」と思う ことが多く、日々勉強中です。 皆さんと一緒に成長していければ嬉しい です。よろしくお願いします!
  5. 特に重要なアーキテクチャ 特に重要なアーキテクチャ 特に重要なアーキテクチャ 出典:FORM S-1 Snowflake Inc. p.84    https://docs.snowflake.com/ja/user-guide/intro-key-concepts Snowflakeの機能を理解する

    にあたって大切な3層です。 この場では、簡潔にご説明し ます。 ・クラウドサービス層 - 認証、権限制御、クエリ最適化、     メタデータ管理など ・コンピュート層(クエリ処理層) - 仮想ウェアハウスで処理毎に  処理を実施 ・ストレージ層 - 物理データを列志向で格納 - マイクロパーティションで分割
  6. FROSTYFRIDAY FROSTYFRIDAY をやってみよう! をやってみよう! FROSTYFRIDAY をやってみよう! Frosty_Fridayとは 1.金曜日に更新されるSnowflakeのスキルアップ ウィークリーチャレンジです 2.レベルは

     Easy Basic Intermediate Hard  ※この勉強会ではEasyかBasicのみ 3.回答は(公式には)ありません!  ※先人たちの回答はGitHubにあります Snowflakeの機能を学びつつTipsが学べます! https://frostyfriday.org/ 解説動画があります Snowvillage(Snowflakeのコミュニティー) でご活躍中の    tomoさん がくさん あれさん がSnowflakeを得意とするゲストを招いて 隔週で解説動画をYouTubeにUPしてくれています。 わからなければこの解説動画を見ながら学べます! https://www.youtube.com/watch? v=0T8P_bw6GgE&list =PLVj4iIZgzTAq2FzaBB gqFOtZaJTcoG3JR
  7. ID NAME QUANTITY 101 PC 10 ID NAME QUANTITY 101

    PC 10 102 スマートフォン 20 ID NAME QUANTITY METADATA $ACTION METADATA $ISUPDATE METADATA $ROW_ID 102 スマートフォン 20 INSERT FALSE xxxxx Streamの例 Streamの例 Streamの例 Table Stream 商品テーブルにレコード(ID102)を追加した場合の例 元のテーブルの変更内容、Stream特有の追加メタデータ列が含まれる
  8. 列名 詳細 METADATA $ACTION 記録された DML 操作(INSERT、 DELETE)を示します。 なおUPDATEは、DELETE および

    INSERT 記録のペアとして表される。 METADATA $ISUPDATE 操作が UPDATE ステートメントの一部であったかどうかを示します。 なお同じオフセットの中で行が追加された後、すぐに更新された場合は、追加と更新を分けずに「新 しい行が追加された」という結果だけを記録され、FALSEになります(純粋なINSERT扱い)。 METADATA $ROW_ID 行の一意かつ不変の ID を指定します。 Streamの追加メタデータ Streamの追加メタデータ Streamの追加メタデータ Stream特有の追加メタデータは以下のとおりです。  
  9. CREATE OR REPLACE TASK copy_task WAREHOUSE = COMPUTE_WH SCHEDULE =

    '5 minute' WHEN SYSTEM$STREAM_HAS_DATA('event_stream') AS ーーー実行したい処理を記載ーーー; 以下のようにタスクとして、使うこともできます。 以下例だと、5分ごとに更新有無をStreamから確認して、 更新があった場合のみ特定処理を実行することができます。 Streamがデータを持っているかを確認 Streamのユースケース Streamのユースケース Streamのユースケース
  10. Stream利用時の注意点① Stream利用時の注意点① Stream利用時の注意点① 利用に当たり、以下が注意点となる。 1. Streamの消費タイミング Streamは「前回ここまで読んだよ」という地点(オフセット)から最新ま での変更差分だけを返す、という機能。 例えると「テレビの録画再生バー」みたいなもので、最後に見たとこ ろから先の部分だけが見られる。

    単にstreamを参照(select)するだけなら、オフセットは進まない。 Streamを使ったDMLの一部(INSERT/DELETEなど)を実行すると「消費済 み」とマークされ、オフセットが進む。 V1(前回読んだポイント) V2(最新) V1地点(オフセット)でSELECTすると、毎回V2までの差分が返ってくる。 一度これらの差分を用いたDMLを実行すると、オフセットがV2に進む。 もう一度SELECTを実行してもV2が最新で差分がないので、値は帰ってこない。
  11. 利用に当たり、以下が注意点となる。 2. 実データはテーブル側に存在(Streamはテーブル本体のデータは持たない) Snowflakeではテーブルに DATA_RETENTION_TIME_IN_DAYS という 「変更履歴を保持する日数」が設定されます(デフォルトは1日、最大90 日) 。 Streamはテーブルの

    変更履歴 を参照して差分を返す仕組みなので、テー ブルの保持期間を過ぎた古いデータにはアクセスできなくなる。   最新 データ 1日前 データ 2日前 データ Stream利用時の注意点② Stream利用時の注意点② Stream利用時の注意点② DATA_RETENTION_TIME_IN_DAYSが1の場合、それ以前のデータはStreamで利用不可 利用可能 利用不可
  12. Week38の内容を図解 Week38の内容を図解 Week38の内容を図解 Snowflake データベース DB_WEEK38 スキーマ SCHEMA_WEEK38 ウェアハウス COMPUTE_WH

    テーブル EMPLOYEES ①ウェアハウス利用権限割当 ②データベース作成 ③スキーマ作成 ④StartUpコードより テーブル・ビュー作成 ⑤ストリーム作成 ⑥Salesの一部行を削除 ⑦削除データの確認テーブル作成 ⑧ストリームのデータを⑦に登録 テーブル DELETED_TABLE テーブル SALES ビュー EMPLOYEE_SALES ストリーム STREAM_WEEK38 タスク DELETED_DATA
  13. Week38の内容を図解 Week38の内容を図解 Week38の内容を図解 Snowflake データベース DB_WEEK38 スキーマ SCHEMA_WEEK38 ウェアハウス COMPUTE_WH

    テーブル EMPLOYEES ⑨タスク実行権限割当 ⑩タスク作成 ⑪タスク定期実行開始 ⑫Salesの一部行を削除 ⑬タスク定期実行停止 テーブル DELETED_TABLE テーブル SALES ビュー EMPLOYEE_SALES ストリーム STREAM_WEEK38 タスク DELETED_DATA
  14. 勉強会で 勉強会で 分からないことがあれば・・ 分からないことがあれば・・   Slackの#snowflake-rookies-camp   Slackの#snowflake-rookies-camp チャンネル チャンネル   で是非質問してください!!   で是非質問してください!!

      初歩的な質問でもなんでも聞けるチャンネルに   初歩的な質問でもなんでも聞けるチャンネルに   したいと思っています!   したいと思っています! 勉強会で 分からないことがあれば・・   Slackの#snowflake-rookies-camp チャンネル   で是非質問してください!!   初歩的な質問でもなんでも聞けるチャンネルに   したいと思っています!
  15. Rookies Camp Meetup 2025/09/11(木) 2025/09/12(金) 両日とも13:30〜14:10 予約不要 Snowflake Rookies Campに参加して

    初めてコミュニティに参加された方同士が、 オフラインで出会えるチャンス! ここで出会った方と午後のセッションに参加すると 孤独感が薄れるかも? コミュニティブースに出展します!!! Rookies Camp Meetup / Rookies Camp Demoの2本立て QRコードはこちら!! Snowflake World Tour Snowflake World Tour のご案内 のご案内 Snowflake World Tour のご案内
  16. Rookies Camp Demo 2025/09/11(木) 2025/09/12(金) 両日とも16:30〜17:10 予約不要 Snowflakeを使ったことがない人でも、短時間で理 解できる機能をご紹介! その名も「Snowflake初心者向け、Cortex

    Analyst でおしゃべり分析体験」 当日は幹事が作ったチャットボットで 何かを聞いてみたいと思います。 お楽しみに! コミュニティブースに出展します!!! Rookies Camp Meetup / Rookies Camp Demoの2本立て Snowflake World Tour Snowflake World Tour のご案内 のご案内 Snowflake World Tour のご案内