【PIXIV MEETUP 2023】ピクシブのデータインフラと組織構造
by
Kashira
Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
pixiv Inc. ピクシブのデータ インフラと組織構造 @kashira
Slide 2
Slide 2 text
Profile kashira CTO室 プラットフォーム開発部 エンジニア データインフラの整備や、 データマネジメントを担当
Slide 3
Slide 3 text
このプレゼンで話すこと ● ピクシブのデータインフラ ● データ利活用の組織構造 ● データインフラの将来の展望
Slide 4
Slide 4 text
データインフラ
Slide 5
Slide 5 text
プロダクト数が多い! 2023年8月31日時点 https://www.pixiv.co.jp/service/ 約330名(正社員数)で16プロダクトを運営している 全員が開発する訳ではないが、単純計算で1プロダクトあたり約20人で運営
Slide 6
Slide 6 text
全社共通のデータインフラ ドメイン コーポレート インフラ マーケティング データを1つのデータインフラに集約
Slide 7
Slide 7 text
BigQueryの利用状況 ● データ量: 約7.8PiB ● データアップロード量/日: 約6.9TiB/日 ● テーブル数: 約180,000テーブル ● ジョブ数/日: 約52,000件/日 ※2023年9月時点のデータ
Slide 8
Slide 8 text
Lookerの利用状況 ● 月間利用者数(MAU): 248人 ● アクティブ率(MAU/正社員数): 74% ● モデル数: 1522個 ● ダッシュボード数: 1368個 ● スケジュール数: 220個 ※2023年8月時点のデータ
Slide 9
Slide 9 text
全社のデータインフラ
Slide 10
Slide 10 text
データインフラの全体像
Slide 11
Slide 11 text
全社のデータ利活用を支えるデータインフラ DBデータ export 分析 load extract Transform ※機械学習などの特殊な要件は別で基盤で処理 ※全社的によく利用されるものをピックアップ
Slide 12
Slide 12 text
データ基盤チームの仕事
Slide 13
Slide 13 text
BigQueryの管理 ● ストレージの管理・モニタリング ● スロット(≒ 仮想CPU) 周りの管理・モニタリング ● 機密情報周りの管理・モニタリング ● 権限のポリシー設計 ● コスト管理
Slide 14
Slide 14 text
Looker ● コスト管理 ● CI/CDの管理 ● インスタンスとBigQueryの接続周りの管理
Slide 15
Slide 15 text
Airflow + Embulk(bq-batch) ● Airflow管理 ● テンプレートの作成 ● 使い方のドキュメントを作成 ● CI/CDの管理 ● ライブラリの更新
Slide 16
Slide 16 text
データ基盤チームは データを管理していない
Slide 17
Slide 17 text
データ整備に 必要なインフラを管理
Slide 18
Slide 18 text
じゃあ、誰がデータを 管理しているの?
Slide 19
Slide 19 text
データ利活用の組織構造
Slide 20
Slide 20 text
データ基盤 ドメイン コーポレート インフラ マーケティング よくある組織構造 横断組織: データ分析チーム・データエンジニアリングチーム
Slide 21
Slide 21 text
データ基盤 ドメイン コーポレート インフラ マーケティング 中央のデータ組織がデータ利活用の主役 横断組織: データ分析・データエンジニアリングチーム 主役
Slide 22
Slide 22 text
データ組織が主役の場合 ドメインチーム(分析の依頼人) 分析チーム データ整備チーム 分析依頼 データ連携依頼 データ加工 データ分析 データ仕様 の問い合わせ
Slide 23
Slide 23 text
データ組織中心の体制は ピクシブには合わない
Slide 24
Slide 24 text
なぜか?
Slide 25
Slide 25 text
(再掲) 社員に対してプロダクト数が多い! 2023年8月31日時点 https://www.pixiv.co.jp/service/ 約330名(正社員数)で16プロダクトを運営している = 1プロダクトあたり約20人で運営
Slide 26
Slide 26 text
プロダクトの数が多い ● データ分析はドメイン知識が最重要 ● 正社員が約330名に対して、プロダクトの数が16個 ○ 必要とするドメイン知識も様々 ○ イラスト、小説、EC、3D、BtoBなどなど ● 中央の分析者のみで分析するのは難しい
Slide 27
Slide 27 text
もし、 ピクシブのデータ利活用の主役が 中央のデータ組織だったら
Slide 28
Slide 28 text
IFの世界 ● 利用者は簡単に分析結果が得られる ● → でもデータ分析には時間がかかる ● -> 分析依頼が多くなると返答が遅くなる ● → 利用者体験が悪化、解決にはデータ人材が必要 ● -> でも人はそんなに取れない... ● → 困った 😭
Slide 29
Slide 29 text
コミュニケーションがボトルネック ドメインチーム(分析の依頼人) 分析チーム データ整備チーム 分析依頼 データ連携依頼 データ加工 データ分析 データ仕様 の問い合わせ
Slide 30
Slide 30 text
じゃあ、どうしたのか?
Slide 31
Slide 31 text
ドメインチームを主役に
Slide 32
Slide 32 text
データ基盤 ドメイン コーポレート インフラ マーケティング ドメインチームがデータ利活用の主役 横断組織 主役
Slide 33
Slide 33 text
ピクシブではドメインチームが主役 ドメインチーム データ分析 データ加工 データ連携 データ生成 全部やります!!
Slide 34
Slide 34 text
ドメインチームが主役だと ● 伝言ゲームが少なく、分析のための準備時間が短い !! ● ボトルネックが無くスケールしやすい ● データの民主化を目指す
Slide 35
Slide 35 text
ただし、課題も沢山ある...
Slide 36
Slide 36 text
乗り越えるべき課題も沢山ある ● データ利活用をするための認知負荷が高い ● データ利活用の環境構築まで手が回らない ● 作業者がデータの専門家ではない場合も多い ● データガバナンスの統制が難しい
Slide 37
Slide 37 text
ドメインチームに丸投げ すればいいわけではない
Slide 38
Slide 38 text
ドメインチームをサポート する体制が重要になる
Slide 39
Slide 39 text
ドメインチームをサポートする体制が重要 ドメインチーム1 ドメインチーム2 ドメインチーム3 全社プラットフォーム ノウハウの共有・共通ルールの作成のための定例 データ利活用の推進・コンサル
Slide 40
Slide 40 text
ドメインチームの サポート体制
Slide 41
Slide 41 text
データ利活用の組織の登場人物 ● データエンジニアリング互助会 ● データ駆動推進室 ● データ基盤チーム 3つのチーム・組織がドメインチームをサポート!
Slide 42
Slide 42 text
ピクシブのデータ組織構造
Slide 43
Slide 43 text
データエンジニアリング互助会の役割 ● 社内でデータ利活用に携わる仲間と知見を交換・集約できる場 ● データに興味がある人達で運営 ○ 体制図上のチームではない ● ベストプラクティスを共有し、分析環境を健全に保つ ● 互いに助け合う文化の醸成・維持も担う https://inside.pixiv.blog/2022/07/28/130000
Slide 44
Slide 44 text
データエンジニアリング互助会の内容 ● 9部署15人が良く参加するメンバー ● 議題 ○ 更新されたドキュメントの確認 ○ 他部署や全社的なルールに関する討論 ○ 現在進行中の案件の共有
Slide 45
Slide 45 text
● データ利活用をするための認知負荷が高い ● データ利活用の環境構築まで手が回らない ● 作業者がデータの専門家ではない場合も多い ● データガバナンスの統制が難しい 乗り越えるべき課題 対策
Slide 46
Slide 46 text
データ駆動推進室の役割 ● データドリブンな意思決定による業務の効率化を推進 ● ドメインチームが自走してデータ利活用するためのサポート ● データインフラを整備しても使われない ● ドキュメント整備や社内教育活動が必要
Slide 47
Slide 47 text
● データ利活用をするための認知負荷が高い ● データ利活用の環境構築まで手が回らない ● 作業者がデータの専門家ではない場合も多い ● データガバナンスの統制が難しい 乗り越えるべき課題 対策 対策
Slide 48
Slide 48 text
データ基盤チームの役割 ● データ利活用を自己完結できるデータインフラを提供 ● データ利活用のハードルをインフラ面から下げる ● データマネジメント関連の作業も担当
Slide 49
Slide 49 text
全社のデータ利活用を支えるデータインフラ DBデータ export 分析 load extract Transform ※機械学習などの特殊な要件は別で基盤で処理 ※全社的によく利用されるものをピックアップ
Slide 50
Slide 50 text
● データ利活用をするための認知負荷が高い ● データ利活用の環境構築まで手が回らない ● 作業者がデータの専門家ではない場合も多い ● データガバナンスの統制が難しい 乗り越えるべき課題 対策 対策
Slide 51
Slide 51 text
結果どうだったか?
Slide 52
Slide 52 text
⭕ 上手くいった所 ● データの繋ぎこみ、分析がチーム内で素早く完結する ● スケールしやすい ● エンジニアの分析への関心度が高い ● コスト最適化しやすい ● インフラのナレッジが溜まりやすい
Slide 53
Slide 53 text
△ まだ対策が必要な所 ● データ品質管理が難しい ● ナレッジの共有が難しい ● ビジネス職にはハードルが高い ● データ基盤チームがボトルネックになりやすい
Slide 54
Slide 54 text
データ品質管理が難しい ● データ品質を保つのはそもそも大変 ● + データ利活用する人がデータの専門家でないことが多い ● 啓蒙もベストプラクティスも工数も足りない
Slide 55
Slide 55 text
データ品質管理への対策 ● データオーナーを立てる ● 全社的なデータ品質チェックの追加 ● データリネージの導入 ● (やりたい) データカタログのテンプレート整備 ● (やりたい) dbtでのテストの強制
Slide 56
Slide 56 text
ナレッジ共有が難しい ● データ利活用する人が各部に分散している ● 大抵一人で作業を進めるケースが多い ● データエンジニアリング互助会の取り組みでは不十分 ● 特に基礎的な部分が足りていないケースが多い
Slide 57
Slide 57 text
ナレッジ共有への対策 ● データ基盤チーム・データ駆動推進室が旗振り役となる ● 読書会を様々な部署を巻き込んで実行する ● 今は以下の2つの読書会を開催している ○ Fundamentals of Data Engineering ○ LEAN ANALYTICS
Slide 58
Slide 58 text
ビジネス職にはハードルが高い ● エンジニアであればドキュメントを見るだけ、データ利 活用が出来るインフラを整備している ● ビジネス職オンリーのチームは難しい ● ビジネス職には必要なスキルの難易度が高い ○ SQL、Git、Python
Slide 59
Slide 59 text
ハードルを下げるための対策 ● (やりたい) トレーニングの強化 ● (やりたい) データ連携を簡略化するツールの提供
Slide 60
Slide 60 text
データ基盤チームがボトルネック ● データツールは進化が早い ● ツール導入の遅れはデータ利活用の遅れに ● でも全社共通インフラでは導入のコストが大きい
Slide 61
Slide 61 text
ボトルネックへの対策 ● データ基盤チームの責務を無闇に増やさない ● 共通ルール・共通処理を無闇に増やさない ● 移行作業ではドメインチームにも手伝ってもらう
Slide 62
Slide 62 text
データ基盤チームとしての 将来の展望
Slide 63
Slide 63 text
データ基盤チームの将来の展望 ● データ整備のサイクルタイムを短く ● 全社のデータ品質・メタデータの強化 ● データインフラをProduct化
Slide 64
Slide 64 text
データ整備のサイクルタイムを短く ● データ整備にかける時間を短縮! ● dbtとFivetranを絶賛導入検討中 ● 合わせてデータ品質の向上に着手 Modern Data Stackの導入
Slide 65
Slide 65 text
データ品質・メタデータの強化 ● dbt移行に合わせてテスト・メタデータを強化 ● データカタログのテンプレートポリシーの策定 ● 全社的なデータ品質チェックの更なる追加
Slide 66
Slide 66 text
データインフラをProduct化 ● 定常的にフィードバックを受け取れる仕組みの整備 ● 社内に向けたマーケティング ● KPIの策定 ● コスト最適化 ● 価値の可視化
Slide 67
Slide 67 text
まとめ
Slide 68
Slide 68 text
全社共通のデータインフラ ドメイン コーポレート インフラ マーケティング データを1つのデータインフラに集約
Slide 69
Slide 69 text
データ基盤 ドメイン コーポレート インフラ マーケティング ドメインチームがデータ利活用の主役 横断組織 主役
Slide 70
Slide 70 text
ピクシブではドメインチームが主役 ドメインチーム データ分析 データ加工 データ連携 データ生成 全部やります!!
Slide 71
Slide 71 text
ドメインチームをサポートする体制が重要 ドメインチーム1 ドメインチーム2 ドメインチーム3 データ基盤チーム データエンジニアリング互助会 データ駆動推進室
Slide 72
Slide 72 text
ご清聴ありがとうございました