$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
ある日PHPerがベンチャー企業のデータ基盤を作ることになったら
Search
y-tsuzaki
March 13, 2023
Technology
1
430
ある日PHPerがベンチャー企業のデータ基盤を作ることになったら
ある日PHPerがベンチャー企業のデータ基盤を作ることになったら
PHPerKaigi2023(勝手に)リジェクトカンファレンス
M&Aクラウド プロダクト開発部 つざき
y-tsuzaki
March 13, 2023
Tweet
Share
More Decks by y-tsuzaki
See All by y-tsuzaki
PHPカンファレンス福岡2024 【超特急】SQLアンチパターン総おさらいLT
ytsuzaki
1
1.4k
PHPカンファレンス北海道2024 リーダブルSQL
ytsuzaki
5
760
【PhpStorm】モブプログラミングの実践と学び【結局はバランス?】
ytsuzaki
0
460
PHPerKaigi 2022 【Laravel】 サクッとN + 1問題を見つけて倒しチャオ!
ytsuzaki
1
3.1k
【超特急】「SQLアンチパターン」 総おさらいLT 【4分で25個】
ytsuzaki
2
880
Nuxt Composition API 使ってみた
ytsuzaki
0
260
Nuxt.js x Composition API x TypeScript
ytsuzaki
0
770
PHPerKaigi 2021 LT PHPで簡単コード生成! 同じようなコードをたくさん書くなら コード生成しチャイナ!
ytsuzaki
0
150
アクセス制御ライブラリ Casbinを使ってみた
ytsuzaki
2
1.6k
Other Decks in Technology
See All in Technology
Kubernetes Multi-tenancy: Principles and Practices for Large Scale Internal Platforms
hhiroshell
0
120
AI 駆動開発勉強会 フロントエンド支部 #1 w/あずもば
1ftseabass
PRO
0
390
WordPress は終わったのか ~今のWordPress の制作手法ってなにがあんねん?~ / Is WordPress Over? How We Build with WordPress Today
tbshiki
1
800
「図面」から「法則」へ 〜メタ視点で読み解く現代のソフトウェアアーキテクチャ〜
scova0731
0
300
打 造 A I 驅 動 的 G i t H u b ⾃ 動 化 ⼯ 作 流 程
appleboy
0
350
エンジニアリングをやめたくないので問い続ける
estie
2
1.2k
2025年 開発生産「可能」性向上報告 サイロ解消からチームが能動性を獲得するまで/ 20251216 Naoki Takahashi
shift_evolve
PRO
1
200
コンテキスト情報を活用し個社最適化されたAI Agentを実現する4つのポイント
kworkdev
PRO
1
1.5k
Databricks向けJupyter Kernelでデータサイエンティストの開発環境をAI-Readyにする / Data+AI World Tour Tokyo After Party
genda
1
510
AI時代の新規LLMプロダクト開発: Findy Insightsを3ヶ月で立ち上げた舞台裏と振り返り
dakuon
0
170
モダンデータスタック (MDS) の話とデータ分析が起こすビジネス変革
sutotakeshi
0
500
AI駆動開発の実践とその未来
eltociear
0
110
Featured
See All Featured
4 Signs Your Business is Dying
shpigford
186
22k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
The Pragmatic Product Professional
lauravandoore
37
7.1k
The Language of Interfaces
destraynor
162
25k
Build The Right Thing And Hit Your Dates
maggiecrowley
38
3k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
10
730
A Modern Web Designer's Workflow
chriscoyier
698
190k
VelocityConf: Rendering Performance Case Studies
addyosmani
333
24k
GraphQLとの向き合い方2022年版
quramy
50
14k
Navigating Team Friction
lara
191
16k
Writing Fast Ruby
sferik
630
62k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
1.6k
Transcript
Copyright© M&Aクラウド ある日PHPerがベンチャー企業の データ基盤を作ることになったら PHPerKaigi2023(勝手に)リジェクトカンファレンス M&Aクラウド プロダクト開発部 つざき
Copyright© M&Aクラウド 2 自己紹介 つざき @820zacky - アプリケーションエンジニア / 見習いデータエンジニア
- Laravel + Nuxt.js / Svelte - SIer → Web受託開発 → M&Aクラウド
Copyright© M&Aクラウド イントロダクション - 想定視聴者 - PHPer - データ基盤は詳しくない -
話すこと - データ基盤とはなにか - 導入にあたっての課題とどう対処したのか - 実際どんなデータ基盤を作ったのか - 話さないこと - データ基盤の詳細の話 - データ基盤の詳しい設計の話 - データ基盤に関わる組織の話 3
Copyright© M&Aクラウド 目次 - イントロダクション - 背景 - M&Aクラウドのデータ -
M&Aクラウドにおけるデータの課題 - データ基盤構築の課題と対処法 - DWHがわからない - DWHの技術選定がわからない - DWHの設計がわからない - ETLツールがわからない - dbtがわからない - BIツールがわからない - 構築したデータ基盤 - 構成 - メリット - 今後の展望 - まとめ 4
Copyright© M&Aクラウド イントロダクション 5 PHPでアプリケーション開発たのしいなぁ! つざき
Copyright© M&Aクラウド イントロダクション 6 データ基盤作るのやりますか? CTO荒井
Copyright© M&Aクラウド イントロダクション 7 やります つざき
Copyright© M&Aクラウド イントロダクション 8 ということで 2022年7月からデータ基盤の立ち上げを 手伝うことになりました (※スライド無駄遣いしてすみません)
Copyright© M&Aクラウド データ基盤導入の背景 9
Copyright© M&Aクラウド - 2つのプラットフォームを運営 - M&Aのプロフェッショナルによる M&A・資金調達のサポートするサービス - プラットフォームとは独立的に業務 -
プラットフォームのユーザーではない企業も対象 背景 - M&Aクラウドのデータ 10 M&Aクラウド 資金調達クラウド
Copyright© M&Aクラウド 背景 - M&Aクラウドのデータ 11 プラットフォーム以外にも M&Aアドバイザリーや営業などの様々な業務があり様々なデータがある MySQL、 Salesforce、Googleスプレッドシート、各種
SaaSなどにデータが分散 M&Aクラウドのデータ例
Copyright© M&Aクラウド 背景 - データ利用の課題 12 - Redashの導入によって、ある程度のデータは横断的にSQLで分析・抽出できるようになっていた - ”Redashは、データの視覚化や分析のためのオープンソースのビジネスインテリジェンスツールです。Redashを使用すること
で、SQLやNoSQLデータベース、クラウドサービス、CSVファイルなど、さまざまなデータソースからデータをクエリーして視覚 化することができます。” (ChatGPTより) - 社員がそれぞれSQLでデータ活用できるようになってHAPPYに・・・!? Redashによるデータ利用 SQLを使った ・抽出 ・集計 ・グラフ化
Copyright© M&Aクラウド 背景 - データ利用の課題 13 データ活用の課題 - SQLが乱立・複雑化してどういう集計をしているのかわからない -
毎回JOINしてて大変 - 各部のKGI・KPIなどの事業運営に必要な重要な数字が合ってるのかわからない - スプレッドシートへの連携が不安定 これ結構あるあるだと思います(?) Redash以外についてもいろいろ課題はありますが割愛
Copyright© M&Aクラウド 背景 - M&Aクラウドのデータ基盤の略歴 14 2022年 7月 データ基盤の構築を開始 CTO,
津崎, 業務委託のデータエンジニアの3名 2022年11月 データ基盤を社内公開 2022年 12月 一人目データエンジニア入社 2022年 1月 データチームのロードマップ作成 2023年 3月 データ基盤を使ったデータ活用を進行中 ←今ここ
Copyright© M&Aクラウド 導入の課題と対処法 15
Copyright© M&Aクラウド 導入の課題と対処法 - データ基盤がわからない 16 課題:データ基盤がわからない - データ基盤は、データの収集、保存、処理、管理、分析などを行うための技術的な基盤
Copyright© M&Aクラウド 導入の課題と対処法 - データ基盤がわからない 17 - 3層にわけてデータを扱う - データレイク層
- 多様なデータを集約する場所 - データウェアハウス層 - 加工・結合したデータを置く場所 - 中間の層 - データマート層 - 加工・結合したデータを置く場所 - ユースケースごとにデータを作成
Copyright© M&Aクラウド 導入の課題と対処法 - データ基盤がわからない 18 - 業務委託でデータエンジニアの方に手伝っていただいた - データ基盤の経験がある方に手伝ってもらうことで
手戻りなくデータ基盤の導入、設計ができた - データ基盤の全体像の把握で参考にしたもの - 実践的データ基盤への処方箋(ゆずたそ,渡部徹太郎,伊藤徹郎 著) - データエンジニア向け勉強会(Data Engineering Study) - https://www.youtube.com/channel/UCFde45ijA-G9zs7s2CuftRw
Copyright© M&Aクラウド 導入の課題と対処法 - DWHがわからない 19 課題:DWHがわからない - DWH(データウェアハウス)とは -
様々なシステムからデータを集めて整理する、データの「倉庫」 - データ分析特化のデータベース - SQLでデータ抽出・集計できる 特徴 - 大規模データを蓄積できる - 大規模データを分析できる - データの読み込みに特化 代表的な製品 - Google BigQuery - Redshift - Snowflake
Copyright© M&Aクラウド 導入の課題と対処法 - どのDWH製品を使ったらいいかわからない 20 課題:どのDWH製品を使ったらいいかわからない Redshift Redshift Serverless
Snowflake BigQuery クラウドベンダ ◯ AWS (弊社ですでに使っている) ◯ AWS (弊社ですでに使っている) ◯ AWSも選べる (弊社ですでに使っている) △ GCP (弊社ではマルチクラウドになってし まう) 情報収集のしやすさ △ × できたてのサービスのため △ ◎ 日本語情報が多い クラスタ管理 × 自分で管理 ◯ 不要 △ コンピュートリソースを 自分で決めなきゃいけない ◯ 不要 BI・データ連携 ◯ ◯ ◯ ◎ Google製品(スプレッドシート/Looker Studio)と相性がいい 料金体系 × クラスタ台数で課金 ◯ 分析に使用した時間で課金 △ コンピュートリソース単位 ◎ 分析に使用したデータ量 シェア (2021年 Gartner調べ) 約20% 不明 約26% 約13% DWHの比較表
Copyright© M&Aクラウド 導入の課題と対処法 - ETLツールがわからない 21 課題:ETLツールがわからない - ETLとは -
Extract 抽出 - Transform 変換 - Load ロード - データソース→BigQuery のデータ転送をさせたい Troccoという国内SaaSを採用した 技術選定のポイント - インフラのメンテコストが少ないこと - 運用コストが低いこと - GUIで設定できる - 他のツール:yamlとかPythonを書く必要がある - embulkのyamlも書き出せる
Copyright© M&Aクラウド 導入の課題と対処法 - dbtがわからない 22 課題:dbtがわからない - dbtとは? -
DWH内のデータ変換を実行するツール - SQLを使ってデータの加工ができる - 加工したデータに対してテストを書くこともできる - なぜdbtが必要? - 層ごとに技術要素を分けるやり方もある - 例) S3 → Hadoop → Tableau - 層ごとに技術要素をわけないことでデータモデリングの修正・変更を容 易に - 参考:データ基盤の 3分類と進化的データモデリング - 下町柚子黄昏記 by @yuzutas0 https://yuzutas0.hatenablog.com/entry/2018/12/02/180000 - dbtのベストプラクティスに習い 4層で設計 - 参考: How we structure our dbt projects - dbt https://docs.getdbt.com/guides/best-practices/how-we-structure/1-guide-overview - dbt docs でデータカタログを生成 - メタデータを閲覧できるドキュメント
Copyright© M&Aクラウド 導入の課題と対処法 - BIツールがわからない 23 課題:BIツールがわからない - BI(ビジネスインテリジェンス)とは -
組織がよりデータに基づいた意思決定を行えるように支援するツール - データをグラフ化してレポート作成 - 代表的なもの - Tableau - Microsoft Power BI - Google Looker Studio (Data Potalから名称変更) Google Looker Studioを採用 - (結局スプレッドシートが便利すぎるのでスプレッドシートも BIとして活用) 技術選定のポイント - BigQueryと連携しやすい - 無料なところ - 他のツールは何百万円 /年 くらいかかる
Copyright© M&Aクラウド 導入の課題と対処法 - dbtがわからない 24 参考: - dbt とは何をするツールなのか?
| FLYWHEEL Tech ブログ - 「はじめてのdbt活用~DWH内のデータ整備が楽になる!~」を開催しました #dbt - dbt™ CLIでデータ開発に自動テストを導入した話 - データエンジニア界隈で有名な dbtまとめ - dbt Cloudで始めるデータパイプライン構築の dbt入門 - dbtでmodelやsourceのベースとなるコードを自動で生成してくれる package「codegen」を試してみた
Copyright© M&Aクラウド 構築したデータ基盤 25
Copyright© M&Aクラウド 構築したデータ基盤 - 構成 26 構築したデータ基盤
Copyright© M&Aクラウド 構築したデータ基盤 - 得られたメリット 27 データ基盤の課題が解決された - SQLが乱立・複雑化してどういう集計をしているのかわからない -
データ基盤で秩序がもたらされた - 毎回JOINしてて大変 - データ基盤側でよくJOINされるテーブルをあらかじめJOINしたデータマートをデータチームが作成 - 各部のKGI・KPIなどの事業運営に必要な重要な数字が合ってるのかわからない - データ基盤で秩序がもたらされた - データマートをデータチームが作成中 - スプレッドシートへの連携が不安定 - スプレッドシートのコネクテッドシート機能でデータ基盤と連携
Copyright© M&Aクラウド 今後の展望 28
Copyright© M&Aクラウド 今後の展望 29 - データ基盤を使って正しい数字を出していく - 各部のKGI・KPIを全てデータ基盤で正確に計算 - 社内でのデータ利用の推進
- データカタログの充実 - 便利なデータマートの充実 - SQLなしでデータを分析できるような仕組みづくり - 利用できるデータを増やして分析の幅を広げる - ユーザーの流入から M&Aの成約に至るまでのあらゆるデータを統合して分析できるようにする
Copyright© M&Aクラウド まとめ 30
Copyright© M&Aクラウド まとめ 31 - ある日PHPerがベンチャー企業のデータ基盤を作ることになったら・・・ - 未経験でわからないことだらけ - 経験のあるデータエンジニアと一緒に基盤構築したことで無事データ基盤構築ができた
- 山﨑さん ありがとうございます (https://www.linkedin.com/in/profile-yohei-abo/) - スモールに始められて運用の人的コストも低いような技術選定をした - DWH: BigQuery - ETL : dbt, Trocco - BI : Google Looker Studio / スプレッドシート - これからもデータの活用とデータ基盤の改善を進めていく