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
140
Snowflake女子会#3 Snowpipeの良さを5分で語るよ
tkkihr2548
December 12, 2024
Tweet
Share
More Decks by tkkihr2548
See All by tkkihr2548
BigQuery × ML × troccoを用いた VoC分析のためのデータ基盤構築
lana2548
0
220
Other Decks in Technology
See All in Technology
re:Invent2024のIaC周りのアップデート&セッションの共有/around-re-invent-2024-iac-updates
tomoki10
0
960
大規模サーバ移行を成功に導くための事前調査フェーズの工夫事例
fukuchiiinu
2
130
【AWS re:Invent 2024】Amazon Bedrock アップデート総まとめ
minorun365
PRO
7
770
tokyo_re_Growth2024_yoshi
yoshi22
0
180
データパイプラインをなんとかした話 / Improving the Data Pipeline in IVRy
mirakui
1
320
WACATE2024冬セッション資料(ユーザビリティ)
scarletplover
0
150
宇宙最速のランチRecap LT会(AWS re:Invent 2024)
watany
1
440
ブラックフライデーで購入したPixel9で、Gemini Nanoを動かしてみた
marchin1989
1
370
Ruby on Railsで作る銘柄スクリーニング
shoe116
0
120
kargoの魅力について伝える
magisystem0408
0
170
NilAway による静的解析で「10 億ドル」を節約する #kyotogo / Kyoto Go 56th
ytaka23
3
310
AI時代のデータセンターネットワーク
lycorptech_jp
PRO
1
240
Featured
See All Featured
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
38
1.9k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.1k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
5
430
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
26
1.8k
Git: the NoSQL Database
bkeepers
PRO
427
64k
Large-scale JavaScript Application Architecture
addyosmani
510
110k
The Cost Of JavaScript in 2023
addyosmani
45
6.9k
Producing Creativity
orderedlist
PRO
341
39k
Typedesign – Prime Four
hannesfritz
40
2.4k
Automating Front-end Workflow
addyosmani
1366
200k
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!