$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
DatumSt_Snowpark0126.pdf
Search
tat
January 27, 2023
Technology
0
320
DatumSt_Snowpark0126.pdf
tat
January 27, 2023
Tweet
Share
Other Decks in Technology
See All in Technology
AgentCoreとStrandsで社内d払いナレッジボットを作った話
motojimayu
1
890
たまに起きる外部サービスの障害に備えたり備えなかったりする話
egmc
0
400
Knowledge Work の AI Backend
kworkdev
PRO
0
210
Introduce marp-ai-slide-generator
itarutomy
0
110
【開発を止めるな】機能追加と並行して進めるアーキテクチャ改善/Keep Shipping: Architecture Improvements Without Pausing Dev
bitkey
PRO
1
120
Entity Framework Core におけるIN句クエリ最適化について
htkym
0
120
Building Serverless AI Memory with Mastra × AWS
vvatanabe
0
490
"人"が頑張るAI駆動開発
yokomachi
1
130
松尾研LLM講座2025 応用編Day3「軽量化」 講義資料
aratako
3
2.8k
_第4回__AIxIoTビジネス共創ラボ紹介資料_20251203.pdf
iotcomjpadmin
0
130
AI駆動開発ライフサイクル(AI-DLC)の始め方
ryansbcho79
0
150
AWS re:Invent 2025~初参加の成果と学び~
kubomasataka
0
180
Featured
See All Featured
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
190
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
310
Scaling GitHub
holman
464
140k
Unsuck your backbone
ammeep
671
58k
Optimizing for Happiness
mojombo
379
70k
Docker and Python
trallard
47
3.7k
How to make the Groovebox
asonas
2
1.8k
Building an army of robots
kneath
306
46k
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
410
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
0
97
Joys of Absence: A Defence of Solitary Play
codingconduct
1
260
Rebuilding a faster, lazier Slack
samanthasiow
85
9.3k
Transcript
0 Snowflake初心者が Snowparkで実践したこと 2023/01/26 データエンジニア部1G 立石 真悟
自己紹介 発表概要 動作環境 Snowflakeに入門 Snowparkに挑戦 他のデモに挑戦 まとめと課題 自己紹介 2022年7月以前 「データエンジニア見習い」に分類される職歴(なぜかGCPが多かった)
2022年8月1日 DATUM STUDIO入社 2022年9月以降 AWS基盤機械学習バッチの保守案件 皆様に訴えたいこと Snowflakeは知らなかったし、案件でも触ったことがない。 1
自己紹介 発表概要 動作環境 Snowflakeに入門 Snowparkに挑戦 他のデモに挑戦 まとめと課題 発表概要 ゴール:Snowflakeを知らない人がPython用Snowparkを使った発表をするまでの奮闘を描く 2
snowflake Scala Java Python 対象: Snowflakeを知らない、使ったことのない方
自己紹介 発表概要 動作環境 Snowflakeに入門 Snowparkに挑戦 他のデモに挑戦 まとめと課題 動作環境 3 ※m1macではminiconda環境でx86用の環境を作る工程があります。が、限定的なので割愛します。
▪マシンスペック MacBook Air (M1, 2020) チップ Apple M1 macOS Ventura 13.1 ▪ライブラリのバージョン(miniconda環境) python 3.8.15 conda 22.11.1 snowflake-snowpark-python 1.0.0 streamlit 1.16.0
自己紹介 発表概要 動作環境 Snowflakeに入門 Snowparkに挑戦 他のデモに挑戦 まとめと課題 Snowflakeに入門0 4 DATUM
STUDIOってSnowflakeに力入れてるのかー。よ〜し、やってみっか。
自己紹介 発表概要 動作環境 Snowflakeに入門 Snowparkに挑戦 他のデモに挑戦 まとめと課題 Snowflakeに入門1 会社でsandboxのアカウントを持っている →ユーザーを作成してもらい、サインイン。。。したのはよいけれど。。。。。。
5 ワークシート? ウェアハウス? ステージ? アカウント?
自己紹介 発表概要 動作環境 Snowflakeに入門 Snowparkに挑戦 他のデモに挑戦 まとめと課題 Snowflakeに入門2 😭 うむ、わからん。(BigQueryと違うやん)
6
自己紹介 発表概要 動作環境 Snowflakeに入門 Snowparkに挑戦 他のデモに挑戦 まとめと課題 Snowflakeに入門3 Getting Started
with Snowflake - zero to snowflakeを実践(CITI_BIKE) https://quickstarts.snowflake.com/guide/getting_started_with_snowflake/index.html 7
自己紹介 発表概要 動作環境 Snowflakeに入門 Snowparkに挑戦 他のデモに挑戦 まとめと課題 Snowflakeに入門4 😟 ↑(ご想像にお任せします。)
あーそーゆーことね (以下略) 8
自己紹介 発表概要 動作環境 Snowflakeに入門 Snowparkに挑戦 他のデモに挑戦 まとめと課題 Snowparkに挑戦1 では、実際にSnowParkを触ってみることにした。 認証情報(ここではcredential.jsonに書く内容)…あれ?
9
自己紹介 発表概要 動作環境 Snowflakeに入門 Snowparkに挑戦 他のデモに挑戦 まとめと課題 Snowparkに挑戦2 なにを書けばええねん? accountが、、、わからない。。。
10
自己紹介 発表概要 動作環境 Snowflakeに入門 Snowparkに挑戦 他のデモに挑戦 まとめと課題 Snowparkに挑戦3 調べると2通りあるようだ。(画面では左下を見れば良いらしい) ・形式1:組織内のアカウント名
[組織名]-[アカウント名] ※ハイフンで繋ぐ(例:ABCDEFG-PQRSTUV) ・形式2:リージョン内のアカウントロケーター [アカウントロケーター].[地域名].[クラウドプラットフォーム] ※ドットでつなぐ(例:xy12345.us-east-2.aws) 11
自己紹介 発表概要 動作環境 Snowflakeに入門 Snowparkに挑戦 他のデモに挑戦 まとめと課題 Snowparkに挑戦4 セッション作成(=ログイン)って別にSnowparkじゃなくてもよくない? すでに、コネクタがあるのになぜだろう?
GUI SnowSQL(CUI) Connector Snowpark snowflake 12
自己紹介 発表概要 動作環境 Snowflakeに入門 Snowparkに挑戦 他のデモに挑戦 まとめと課題 (怒られそうですが。) データ処理をsnowflakeのサーバー側でやってくれるところがSnowparkの強みなんじゃないかと思 えてきた。
クライアント (パイプライン) Snowparkに挑戦5 13 サーバー Snowflake Connector Snowpark UDFs処理 処理 SQLステートメント文字列
自己紹介 発表概要 動作環境 Snowflakeに入門 Snowparkに挑戦 他のデモに挑戦 まとめと課題 Snowparkに挑戦6 簡単なSQLで理解しようとする「SELECT current_version()」
コネクタはカーソルからデータ取得して、DataFrameに詰めなければならないのに対して、 Snowpark経由は、SQLの結果をDataFrameとして取得できる点で違うのでは??? ←コネクタ ↓Snowpark 14
自己紹介 発表概要 動作環境 Snowflakeに入門 Snowparkに挑戦 他のデモに挑戦 まとめと課題 休憩 何はともあれ、Snowpark経由でSnowflakeに繋ぐことができた。 こんなところだけで、スライドの6割が終わってしまった。
せめて、もうちょっと効果的なもので動かしたい。 しかし、いい例が思いつかない。。。 またもやGetting Started系に頼るしかない。 15
自己紹介 発表概要 動作環境 Snowflakeに入門 Snowparkに挑戦 他のデモに挑戦 まとめと課題 他のデモに挑戦1 Snowflakeのチュートリアルが多く含まれている。 https://quickstarts.snowflake.com/
→今回は、赤丸の画像認識アプリを部分的に試す。(先週時点のキャプチャなので、内容が変わっ ている可能性あり) 16
自己紹介 発表概要 動作環境 Snowflakeに入門 Snowparkに挑戦 他のデモに挑戦 まとめと課題 他のデモに挑戦2 githubでは「sfguide-snowpark-pytorch-streamlit-openai-image-rec」というリポジトリに登録され ている。(1/17確認時点)
17
自己紹介 発表概要 動作環境 Snowflakeに入門 Snowparkに挑戦 他のデモに挑戦 まとめと課題 他のデモに挑戦3 18 Snowflake
stage(@dash_files) PyTorch Snowflake側でanacondaが使える(自社のsandbox にはその設定が有効化されてたと思う)ので、この PyTorchを使うことになる。 他の準備として • 画像管理用のテーブル • ファイル格納用ステージ を作成しておく
自己紹介 発表概要 動作環境 Snowflakeに入門 Snowparkに挑戦 他のデモに挑戦 まとめと課題 他のデモに挑戦4 ノートブックを実行し、セッションを作成後、以下の通りUDFをセットする。 MobileNetV3を内部ステージにputする。
putしたファイルをインポートする SnowflakeのAnacondaチャンネルからパッケージを取得する。 19
自己紹介 発表概要 動作環境 Snowflakeに入門 Snowparkに挑戦 他のデモに挑戦 まとめと課題 他のデモに挑戦5 UDFとして登録する たしかに関数にアノテーションのとおり登録されている。
20 そうやって関数を渡すのか。。
自己紹介 発表概要 動作環境 Snowflakeに入門 Snowparkに挑戦 他のデモに挑戦 まとめと課題 他のデモに挑戦6 画面はファイルアップロードだけですが、 これはStreamlitのコードでは以下でUDFを呼び出している。
21
自己紹介 発表概要 動作環境 Snowflakeに入門 Snowparkに挑戦 他のデモに挑戦 まとめと課題 他のデモに挑戦7 DatumStudioホームページにある画像をお借りする。 22
自己紹介 発表概要 動作環境 Snowflakeに入門 Snowparkに挑戦 他のデモに挑戦 まとめと課題 他のデモに挑戦8 前のページの画像はhome theaterと分析された。
23
自己紹介 発表概要 動作環境 Snowflakeに入門 Snowparkに挑戦 他のデモに挑戦 まとめと課題 まとめと課題 今回取り組んだこと Snowflakeの概念を学んだ。
Snowparkを使って、簡単なアプリを動かした。 課題 オリジナリティ0なので、実データを使った例を作らないと。。。 24
自己紹介 発表概要 動作環境 Snowflakeに入門 Snowparkに挑戦 他のデモに挑戦 まとめと課題 おわり 25