Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
第3回Snowflake Rookies Camp
Search
Rookies Camp
July 11, 2026
9
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
第3回Snowflake Rookies Camp
Rookies Camp
July 11, 2026
More Decks by Rookies Camp
See All by Rookies Camp
第5回Snowflake Rookies Camp
rookiescamp
0
9
第6回Snowflake Rookies Camp
rookiescamp
0
10
第7回Snowflake Rookies Camp
rookiescamp
0
8
第1回Snowflake Rookies Camp
rookiescamp
0
10
第2回Snowflake Rookies Camp
rookiescamp
0
10
第4回Snowflake Rookies Camp
rookiescamp
0
8
第8回Snowflake Rookies Camp
rookiescamp
1
100
Featured
See All Featured
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
780
Accessibility Awareness
sabderemane
1
170
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
0
190
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
Building Applications with DynamoDB
mza
96
7.1k
Are puppies a ranking factor?
jonoalderson
1
3.7k
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
4 Signs Your Business is Dying
shpigford
187
22k
The Language of Interfaces
destraynor
162
27k
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
160
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2.3k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.8k
Transcript
Snowflake Snowflake Rookies Camp Rookies Camp No.3 No.3 2025/06/13 2025/06/13
2025/06/18 2025/06/18 Snowflake Rookies Camp No.3 2025/06/13 2025/06/18
お願い! お願い! お願い! 今日の感想 / 勉強会の様子 など ぜひXで発信してください!! ハッシュタグは #SnowVillage
#RookiesCamp
右のQRコードから 本日のイベントの感想など ご回答お願いいたします。 今後のイベントをより良いものにするために ぜひご協力お願いいたします。 アンケート回答のお願い! アンケート回答のお願い! アンケート回答のお願い! ↑ ↑ ↑ QRコードはこちら!!
SnowVillageのご案内 SnowVillageのご案内 SnowVillageのご案内 『Snowvillage』はSnowflakeのコミュニティです。 Snowflakeの成長にとって、このコミュニティの 存在が非常に大きいと感じています。 参加されていない皆さんも 是非この機会にご参加ください。 きっと、暖かく迎え入れてくれると思います。 参加用のURLはこちら
↑ ↑ ↑ QRコードは こちら!!
Snowflake Snowflake Rookies Campも!! Rookies Campも!! Snowflake Rookies Campも!! Slackに参加したら
チャンネル検索!
この会で目指すこと この会で目指すこと この会で目指すこと このコミュニティは、一歩ずつ一緒に成長する場です。 参 加 者 同 士 の
悩 み 共 有 実 用 的 な T i p s の 紹 介 小 さ な 成 功 体 験 の 積 み 重 ね 仲 間 と の つ な が り を 作 る
なにをしたらいいか わからない 初めてだから不安… 初心者ならではの悩み 初心者ならではの悩み 初心者ならではの悩み Snowflakeもほとんど 触ったことがない… 資料やドキュメント が英語でハードルが高い
実際に使いこなしている イメージが湧かない
そんな皆さんを そんな皆さんを 心から歓迎します! 心から歓迎します! 小さな疑問も大歓迎! 小さな疑問も大歓迎! #snowflake-rookies-camp でも受け付けています #snowflake-rookies-camp でも受け付けています
みんなで助け合いながら、 みんなで助け合いながら、 新しい学びを一緒に始めましょう! 新しい学びを一緒に始めましょう! そんな皆さんを 心から歓迎します! 小さな疑問も大歓迎! #snowflake-rookies-camp でも受け付けています みんなで助け合いながら、 新しい学びを一緒に始めましょう!
幹事メンバー 幹事メンバー 幹事メンバー 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活動を行ってい ます。 ユーザー会を通じて、皆さんと一緒に成長して いきたいです!
NEW幹事メンバー NEW幹事メンバー NEW幹事メンバー Hiroki とうないじんや 某カオスな会社でコンサルタントをし ております。 Snowflake歴は1年ほどで初心者です が、質の高いコンテンツを提供できる ように頑張ります!!
Snowflakeに触れ始めて1年ほど経ちます が、 「もっと知っておきたいな」と思う ことが多く、日々勉強中です。 皆さんと一緒に成長していければ嬉しい です。よろしくお願いします!
環境準備 環境準備 環境準備 Snowflake社が 30日間でトライアルできる 環境を提供してくれています。 必要なのは ・インターネット環境 ・メールアドレス のみ! ここから → 無料トライアル
Snowflakeとは? Snowflakeとは? Snowflakeとは? 出典:Snowflakeとは?何がすごいの?~アーキテクチャと特長をわかりやすく解説!~ https://www.ashisuto.co.jp/db_blog/article/what-snowflake.html 『AI Data Cloud』として、 DWHの機能に加え以下の 機能を有しています。
(一部抜粋) ・Snowpipe - 自動データロード ・Data Sharing - データ共有 ・Cortex AI - 機械学習プラットフォーム ・Snowpark - PythonやJava、Scalaの開発 および実行基盤
ここまで説明した内容について ・Snowflakeとは? ・特に重要アーキテクチャ ・FrostyFriday Week1・3 を勉強しました! 復習用にZennブログも書いています! https://zenn.dev/rookiescamp 第2回までの復習! 第2回までの復習!
第2回までの復習!
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
はじめてハンズオンに取り組む方のために、 サンプルコードを用意しました。 途中で分からなくなったら、 こちらのブログをご覧ください。 https://zenn.dev/rookiescamp/articles/5e185de59dbe04 FROSTYFRIDAYの FROSTYFRIDAYの WEEK5を一緒にやってみよう! WEEK5を一緒にやってみよう! FROSTYFRIDAYの
WEEK5を一緒にやってみよう!
お題: ユーザー定義関数(UDFs)を使って3倍の数値を出しましょ う。 使う言語はpython! なお、Snowflake Rookies CampではpythonとSQLを使います FROSTYFRIDAYの FROSTYFRIDAYの WEEK5を一緒にやってみよう!
WEEK5を一緒にやってみよう! FROSTYFRIDAYの WEEK5を一緒にやってみよう!
一緒に学びたいこと ①UDF(ユーザー定義関数)とは ②ストアドプロシージャとの違い(簡潔に紹介) ③Snowparkとは ※次のスライドを使って説明します! FROSTYFRIDAYの FROSTYFRIDAYの WEEK5をやりつつ・・ WEEK5をやりつつ・・ FROSTYFRIDAYの
WEEK5をやりつつ・・
UDFとは UDFとは UDFとは UDF(User-defined functions)とは、 Snowflakeにあらかじめ用意されている関数(システム定義関数)だけでは足り ないときに、自分で関数ロジックを定義して使えるようにできるものです。 →UDFの話をする前にあらかじめ用意されている関数をご紹介します
関数名 詳細 例 ROUND 数字を四捨五入するための関数 SELECT ROUND(123.456); -- 結果: 123
SELECT ROUND(123.789); -- 結果: 124 LEFT 文字列の先頭から、指定した文字数だけ 取り出す関数 SELECT LEFT('Snowflake', 4); -- 結果: 'Snow' UNIFORM 指定した範囲内のランダムな数値を返す関数 SELECT UNIFORM(1, 10, RANDOM()); -- 結果: 1以上10未満のランダムな整数 GENERATOR 指定した条件に基づいて、データの行を作成で きる関数(UNIFORMと組み合わせることで、簡 単にテストデータを用意することが可能) SELECT UNIFORM(1, 10, RANDOM()) FROM TABLE(GENERATOR(ROWCOUNT => 3));-- 結果: 1以上10未満のランダムな整数が3つ システム定義関数 システム定義関数 システム定義関数 システム定義関数はたくさん存在しますが、今回はそのうち4つをご紹介しま す。この他にもMAX, SUMなど様々な関数が存在します。
なぜユーザー定義関数が必要なのか なぜユーザー定義関数が必要なのか なぜユーザー定義関数が必要なのか • 前のスライドで紹介したように、Snowflakeには多くのシステム定義関数 が用意されています。 • しかし、システム定義関数では対応できない処理や、業務特有のロジック が必要になる場面もあります。 •
そのようなデフォルトで存在しない処理を実現するために、独自の関数 (UDF)を定義できます。 • UDFとして定義しておけば、再利用が容易であり保守性も向上します。
UDFの使い方 UDFの使い方 UDFの使い方 SnowflakeのUDFでは以下の言語の利用が可能です。 SQL JavaScript Python Java Scala 実際に作成する利用するまでの手順は以下のとおりです。
1.関数を作成する(定義) 2.定義したUDFをSQLの中で呼び出す rookiescampというUDFを作成した場合は以下のように利用します SELECT rookiescamp([引数])
ストアドプロシージャとの違い ストアドプロシージャとの違い ストアドプロシージャとの違い 観点 UDF ストアドプロシージャ 目的 値を返却する 複数のステップの処理をまとめて実行 戻り値
単一の値 任意(戻り値なしも可、TABLEやJSONなど) 呼び出し方法 SELECT文内など CALLで実行 使用言語 SQL / JavaScript / Python など JavaScript / Python(Snowpark上で動作) INSERTやUPDATE 不可 可 ユースケース 1レコードに対する変換・計算 他のレコード値を利用した複雑な処理
SNOWPARKとは SNOWPARKとは SNOWPARKとは Snowflakeはデータを貯める基盤としての機能だけではなく、 『Snowpark』という開発フレームワークが利用可能です。 PythonやJava、Scalaが利用可能で、ライブラリとランタイムのセットです。 『Snowpark』は以下の利点があります。 Snowflakeの外にデータを出すことなく、利用可能! Sparkやpandasでモデル化されたData Frameを使用して、クエリの記述
やデータ変換を行うことが可能 Snowflakeのサーバレス実行されるため、インフラの管理が不要
Week5の内容を図解 Week5の内容を図解 Week5の内容を図解 Snowflake データベース DB_WEEK5 スキーマ SCHEMA_WEEK5 ウェアハウス COMPUTE_WH
UDF(Python) X3_PY ①ウェアハウス利用権限割当 ②データベース作成 ③スキーマ作成 ④ダミーデータ作成 ⑤UDF(Python)作成 ⑥UDF(Python)実行 ⑦UDF(SQL)作成 ⑧UDF(SQL)実行 テーブル TABLE_WEEK5 UDF(SQL) X3_SQL
お題: ユーザー定義関数(UDFs)を使って身長と体重からBMIを出 しましょう。 体重(kg)÷{身長(m)の2乗} なお、Snowflake Rookies CampではpythonとSQLを使います オプション問題:BMI オプション問題:BMI オプション問題:BMI
BMI問題の内容を図解 BMI問題の内容を図解 BMI問題の内容を図解 Snowflake データベース DB_WEEK5 スキーマ SCHEMA_WEEK5 ウェアハウス COMPUTE_WH
UDF(Python) CALC_BMI_PYTHON ①ウェアハウス利用権限割当 ②データベース作成 ③スキーマ作成 ④ダミーデータ作成 ⑤UDF(Python)作成 ⑥UDF(Python)実行 ⑦UDF(SQL)作成 ⑧UDF(SQL)実行 テーブル TABLE_WEEK5_BMI UDF(SQL) CALC_BMI_SQL
勉強会で 勉強会で 分からないことがあれば・・ 分からないことがあれば・・ #snowflake-rookies-camp #snowflake-rookies-camp チャンネル チャンネル で是非質問してくください!! で是非質問してくください!!
初歩的な質問でもなんでも聞けるチャンネルに 初歩的な質問でもなんでも聞けるチャンネルに したいと思っています! したいと思っています! 勉強会で 分からないことがあれば・・ #snowflake-rookies-camp チャンネル で是非質問してくください!! 初歩的な質問でもなんでも聞けるチャンネルに したいと思っています!
右のQRコードから 本日のイベントの感想など ご回答お願いいたします。 今後のイベントをより良いものにするために ぜひご協力お願いいたします。 アンケート回答のお願い! アンケート回答のお願い! アンケート回答のお願い! ↑ ↑ ↑ QRコードはこちら!!
THANK THANK YOU YOU THANK YOU