Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Snowflakeを中心としたデータ基盤の立ち上げ
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
koonagi
October 02, 2023
2k
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Snowflakeを中心としたデータ基盤の立ち上げ
スタフェス Meetup #4
スターフェスティバル
山﨑 皓平(koonagi3)
koonagi
October 02, 2023
More Decks by koonagi
See All by koonagi
[Findy 新年LT会] つよCTOから役割を引き継いで学んだこと
koonagi
8
140
Cloudbase活用事例
koonagi
1
750
Snowflake初心者がGA4のデータをSnowflakeに連携してみた
koonagi
2
2k
Amazon QuickSightを使ってみて、ハマったこと/Tips集
koonagi
29
1.8k
データドリブンなお弁当開発の 実現に向けた取り組み
koonagi
1
880
Featured
See All Featured
Un-Boring Meetings
codingconduct
0
410
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
570
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
35
2.8k
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
820
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
320
VelocityConf: Rendering Performance Case Studies
addyosmani
331
25k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.8k
Stop Working from a Prison Cell
hatefulcrawdad
274
21k
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
270
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
2
1.8k
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
1
320
Transcript
Snowflakeを中心としたデータ基盤の立ち上げ スタフェス Meetup #4 スターフェスティバル 山﨑 皓平(koonagi3)
自己紹介 2 山﨑 皓平(@koonagi3) 所属 ロール 経歴 好きな Snowflake の機能
スターフェスティバル株式会社 (2022年7月入社) インフラ/データ基盤エンジニア SES ▶ クラウドSIer ▶ 外資コンサル ▶ スターフェスティバル Python Worksheets Streamlit in Snowflake
今日の話 © 2021 STAR FESTIVAL INC. 8 2023年4月からSnowflakeを中心としたデータ基盤の整備を実施 してきました。 データ基盤構成がどのように変わったかと基盤整備を実施する中
わかってきた課題やその対応について本セッションでお話します。 3
Snowflakeの導入
Snowflake 導入の背景 ① 分散したデータソース - 複数のデータソースが存在し、横串検索が難しい - RDS/S3/BigQuery/Kintone/Salesforce ② データ基盤を運用するリソース不足
- データ基盤構築以外の業務もあり、データ基盤のメンテナンスする時間が取れない - 気軽にユーザーが分析をできる環境や検証環境を用意できない データへの関心が社内で高まってきたが、いくつか課題があった
Snowflakeを採用! データ基盤としてメンテナンスフリーな点やセキュリティ機能も 充実しているSnowflakeを採用
データ基盤の運用が楽に セキュリティや可能性の担保など各種インフラの管理を Snowflakeに任せられる
Snowflake導入したことのメリット データソースをまたいだ横断検索やメンテフリーの分析環境が提供できるようになった ① 分散したデータソース - 複数のデータソースが存在し、横串検索が難しい - RDS/S3/BigQuery/Kintone/Salesforce ② データ基盤を運用するリソース不足
- 基盤のメンテナンスする時間が取れない - 気軽にユーザーが分析をできる環境や検証環境を用意できない Snowflakeにデータが集約したことで 簡単に横断検索が可能に 複数のチームにメンテフリーの分析環 境や検証環境が提供可能に これまで 現在
データ基盤の構成変化【Before】 データパイプラインはGo/embulkを利用し、RDSやS3にデータを格納 データソース コレクティング ストレージ アクセス
データ基盤の構成変化【After】 データパイプラインの構造は既存のものを維持しつつ Snowflakeにデータ連携 データソース コレクティング ストレージ アクセス
データ基盤のBefore/After Before After これまではBIによって見ているソースが異なっていたが Snowflakeが 全ての分析のソースになるようにする (SSOT)
見えてきた課題
13 課題 1 課題 2 データパイプライン作成が分析のボトルネックに Snowflakeやその周辺サービスに関するナレッジ不足 見えてきた課題 実際にデータ基盤を構築し、一部運用が始まった段階で大きく 2つ課題が見えてきた
課題1 データパイプライン作成が分析のボトルネックに パイプライン作成業務の負荷が高くデータ基盤チームの作業がボトルネックになっていた S3に連携するまで 1.Embulk設定ファイル作成 2.ECSタスク定義作成 3.Fargate環境作成 4.スケジュール設定 S3からデータ連携/加工まで 1.
テーブル作成 2. S3ステージ作成 3. 取り込みタスク/Pipe作成 4. ストアド/タスク作成
課題1 データパイプライン作成が分析のボトルネックに 自動化/分析者によるセルフサービス化を進めてボトルネック解消に務める ① Infrastructure as Code(Terraform)の活用 - Snowflakeの構成管理 -
Embulk/Fargateの構成管理 ② 設定ファイル作成補助ツール作成 - Embulk設定ファイルテンプレート作成 - Snowflake用Terraform設定ファイルテンプレート作成 (https://github.com/ytake/p2t) ③ マニュアル作成 & セルフサービス化 - データ活用までのマニュアル作成 - 分析者したいチームにマニュアルに沿ったパイプライン作成をお願いし、データ基盤チームは基本レビュアーに。
参考: データ活用 マニュアル抜粋 課題1 データパイプライン作成が分析のボトルネックに
課題2 ナレッジ不足 Snowflakeの有識者が0の状態で活用がスタートしたためナレッジが不足 権限の階層構造どうする? 取り込みはtask/pipeどっちが いいんだ..? 分析者にどこまで権限渡せ ば..? PJごとに課金管理したい なぁ...
同じファイル名のファイルが 連携されてきた際に pipeが動 かないぞ... ETLとかで良いツールないか なぁ...
課題2 ナレッジ不足 ユーザー会(SnowVillage)やイベントへの積極参加し他社事例をキャッチアップ https://speakerdeck.com/koonagi/snowflakechu-xin-zhe-gaga4 nodetawosnowflakenilian-xi-sitemita https://zenn.dev/stafes_blog/articles/7b299b2a03e458 ① 他社事例や技術トレンドのキャッチアップ ② ユーザー会に参加し、更に詳細な情報交換も
- イベント登壇者もユーザー会に何名も所属されているので、相談などもできる
課題2 ナレッジ不足 SnowVillageのSlackチャンネルでは情報共有や設計に関する議論なども行われている
20 課題 1 課題 2 Snowflakeやその周辺サービスに関するナレッジ不足 見えてきた課題と対応 自動化/セルフサービス化 ユーザーグループやイベントへの参加 データパイプライン作成が分析のボトルネックに
さいごに • Snowflakeを利用したことでデータ基盤としてのインフラ運用はほぼ なくなって楽になった • データパイプライン構築が楽になるわけではないので、データ基盤 チームに潤沢なリソースがない場合は、自動化やセルフサービス化、外部 サービスの利用検討が必要 • Snowflakeのキャッチアップはユーザー会やイベントへの参加やがオ
ススメ
ご清聴ありがとうございました 22