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を中心としたデータ基盤の立ち上げ
Search
koonagi
October 02, 2023
0
1.1k
Snowflakeを中心としたデータ基盤の立ち上げ
スタフェス Meetup #4
スターフェスティバル
山﨑 皓平(koonagi3)
koonagi
October 02, 2023
Tweet
Share
More Decks by koonagi
See All by koonagi
Cloudbase活用事例
koonagi
0
470
Snowflake初心者がGA4のデータをSnowflakeに連携してみた
koonagi
0
990
Amazon QuickSightを使ってみて、ハマったこと/Tips集
koonagi
12
1.2k
データドリブンなお弁当開発の 実現に向けた取り組み
koonagi
0
640
Featured
See All Featured
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
33
1.9k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
31
2.7k
Embracing the Ebb and Flow
colly
84
4.5k
A designer walks into a library…
pauljervisheath
203
24k
Thoughts on Productivity
jonyablonski
67
4.3k
Intergalactic Javascript Robots from Outer Space
tanoku
269
27k
Building a Scalable Design System with Sketch
lauravandoore
459
33k
Making the Leap to Tech Lead
cromwellryan
133
8.9k
Building Flexible Design Systems
yeseniaperezcruz
327
38k
How To Stay Up To Date on Web Technology
chriscoyier
788
250k
How to Think Like a Performance Engineer
csswizardry
20
1.1k
10 Git Anti Patterns You Should be Aware of
lemiorhan
654
59k
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