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

ご清聴ありがとうございました