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
Snowflake女子会#3 Snowpipeの良さを5分で語るよ
Search
tkkihr2548
December 12, 2024
Technology
0
610
Snowflake女子会#3 Snowpipeの良さを5分で語るよ
tkkihr2548
December 12, 2024
Tweet
Share
More Decks by tkkihr2548
See All by tkkihr2548
Snowflakeのパフォーマンスチューニングってこんな感じ ~Snowflake Unconference #4~
lana2548
0
77
BigQuery × ML × troccoを用いた VoC分析のためのデータ基盤構築
lana2548
0
250
Other Decks in Technology
See All in Technology
LLM開発を支えるエヌビディアの生成AIエコシステム
acceleratedmu3n
0
350
Claude Codeが働くAI中心の業務システム構築の挑戦―AIエージェント中心の働き方を目指して
os1ma
8
1.1k
FAST導入1年間のふりかえり〜現実を直視し、さらなる進化を求めて〜 / Review of the first year of FAST implementation
wooootack
1
220
LLMでAI-OCR、実際どうなの? / llm_ai_ocr_layerx_bet_ai_day_lt
sbrf248
0
370
恐怖!テストコードなき夜
tsukuboshi
2
100
オブザーバビリティプラットフォーム開発におけるオブザーバビリティとの向き合い / Hatena Engineer Seminar #34 オブザーバビリティの実現と運用編
arthur1
0
200
Datasets for Critical Operations by Dataform
kimujun
0
130
CSPヘッダー導入で実現するWebサイトの多層防御:今すぐ試せる設定例と運用知見
llamakko
1
280
完璧を目指さない小さく始める信頼性向上
kakehashi
PRO
0
130
【CEDEC2025】現場を理解して実現!ゲーム開発を効率化するWebサービスの開発と、利用促進のための継続的な改善
cygames
PRO
0
520
テキストからの実世界知能の実現に向けて
sumoai
0
110
東京海上日動におけるセキュアな開発プロセスの取り組み
miyabit
0
210
Featured
See All Featured
Agile that works and the tools we love
rasmusluckow
329
21k
Optimizing for Happiness
mojombo
379
70k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
30
2.2k
GraphQLの誤解/rethinking-graphql
sonatard
71
11k
YesSQL, Process and Tooling at Scale
rocio
173
14k
Producing Creativity
orderedlist
PRO
346
40k
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.8k
For a Future-Friendly Web
brad_frost
179
9.8k
Rebuilding a faster, lazier Slack
samanthasiow
83
9.1k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
5.9k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
860
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
15
1.6k
Transcript
Snowpipeの良さを5分で語るよ Snowflake女子会#3 2024.12
2 庵原 崚生(Takaki Ihara) 株式会社primeNumber シニアデータエンジニア primeNumber1人目のデータエンジニア → JTC SIerのフロントエンドエンジニア
先週ジムでぎっくり腰になって療養中 ポケポケのやりたい
会社概要 3 株式会社primeNumber 代表取締役CEO 田邊 雄樹 2015年11月 約105名 約34億円 東京都品川区上大崎3丁目1番1号
JR東急目黒ビル5F 会社名 代表 創業 メンバー数 累計調達額 オフィス © primeNumber Inc.
あらゆるデータを、 ビジネスの力に変える。 人とAIが共存する時代に。 知の源泉となるデータを、 誰もがすばやく、自由に使えるように。 primeNumberは、テクノロジーの力で データ活用における不自由をなくし、 あらゆるデータを、ビジネスの力に変えていく。 そして、それまでの常識や産業の枠を超えて、 さまざまな人や企業、技術、アイデアとつながり、
まだない価値を共に生み出していく。 私たちは、人とデータの開かれた関係を築くことで、 人の創造力を解放し、 世界中のビジネスと社会全体の可能性を拡げます。 VISION 4 © primeNumber Inc.
5 さてみなさん、 Snowpipe。使ってますか?
6 もしかしてご存知ない?
7 伝授しましょう
8 Snowpipeとは? 例えば、CSVファイルをSnowflakeに入れたい時にどうするか? SnowSQL Snowsight
9 Snowpipeとは? 例えば、CSVファイルをSnowflakeに入れたい時にどうするか? SnowSQL Snowsight 手動でファイル連携するのは結構面倒!! とはいえOSS採用するにもSaaS契約するにも大変!!
10 そんな時のSnowpipe
11 改めて、Snowpipeとは? Snowflakeに対して、継続的なデータロードを行える仕組み → S3やGoogle Cloud Storageなどのクラウドストレージ(外部ストレージ)にファイル が格納されたら、Snowflakeに通知が飛び、勝手にテーブルにファイルデータが格納され る Continuous
ingestion, and data streaming
12 ざっくりいうと データ取り込みを“勝手に” やってくれるヤツです
13 何が嬉しいの? • 管理が必要最低限になる ◦ データロードのコンピューティングリソース ▪ サーバレス ◦ 転送タイミングの調整が不要
▪ メッセージングキューの利用 ▪ ニアリアルタイム連携 ▪ SimpleIngestManager(後述) • データパイプラインとしての堅牢性 ◦ 冪等性の担保 ◦ 1度ロードしたファイルは14日間ロードできない • コストの納得感 ◦ ベストプラクティスに則ればコストを最小限にできる ▪ ファイルサイズ
14 働きすぎなデータエンジニアの 強い味方
15 Snowpipeを使っていない世界線(おおげさ) またエラー出た... クリスマスに残業か… 毎日バッチジョブの 結果を見て手動で修正... 疲れた...
16 Snowpipeを使っている世界線(おおげさ) Snowpipeが 働いてる間に一服 データをS3にあげたら あとは勝手にやってくれる
17 Snowpipe、使いたくなりません?
18 私が組んだ実例も授けましょう
19 Snowpipeを使った実際の例 Excelのダウンロードを画面上でしか行えないサービスを スクレイピングツール(Selenium)を用いて開発した話
20 Snowpipeを使った実際の例 Excelのダウンロードを画面上でしか行えないサービスを スクレイピングツール(Selenium)を用いて開発した話 ⭐Point⭐ • 後続処理の起動タイミング に合わせるために、あえて 自動データロード機能を 不採用
• SimpleIngestManagerとい うPythonライブラリを用い てSnowpipeを制御 • 諸々のデプロイメントは Terraformを利用
21 とはいえ注意点もあります
22 Snowpipeを使う上での注意点 便利だけではないよ、Snowpipe • 監視は必要 ◦ COPY_HISTORYなどを用いた監視 ◦ エラー時はNOTIFICATION INTEGRATIONを用いた通知管理(メール・Slack)
• ファイルサイズの最適化が必要 ◦ 1ファイルあたり100MB ~ 250MBが最適 ◦ 同じデータ量でもファイルサイズが小さいとコストが跳ね上がる 出展: Snowflake Snowpipe: The Definitive Guide (2024)
23 正しく使って 良いデータエンジニアリングライフを
24 参考記事 めっちゃ助かる。Snowflakeコミュニティの成熟度に感謝。 • Snowpipe によるファイル取り込みを AWS Lambda から動かしてみる ◦
LambdaからSimpleIngestManagerを用いてSnowpipeを制御方法の指南書 ◦ Terraformでのデプロイ前提なのが嬉しい • Snowflake Snowpipeを本番導入する前に読むやつ ◦ 「At least once」との付き合い方について説いている ◦ 本番導入に際して、気をつけるべき点がどこかを包括的に説明
25 最後に宣伝 一緒に働いてくれる方、探しています!👀 • データエンジニア • データストラテジスト • その他の職種について(全ての求人一覧) •
primeNumberリクルートサイト
Thank you!