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
つかわれるプラットフォーム 〜デザイン編〜@DPM#2
Search
takegue
December 02, 2019
Technology
12k
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
つかわれるプラットフォーム 〜デザイン編〜@DPM#2
LTの発表資料です
https://data-platform-meetup.connpass.com/event/155073/
takegue
December 02, 2019
More Decks by takegue
See All by takegue
不自然言語の自然言語処理: コード補完を支える最新技術
takegue
1
910
カルチャーとエンジニアリングをつなぐ データプラットフォーム
takegue
4
6.6k
toC企業でのデータ活用 (PyData.Okinawa + PythonBeginners沖縄 合同勉強会 2019)
takegue
4
1.2k
Rettyにおけるデータ活用について
takegue
0
940
Sparse Overcomplete Word Vector Representations
takegue
0
260
Aligning Sentences from Standard Wikipedia to Simple Wikipedia
takegue
0
250
High-Order Low-Rank Tensors for Semantic Role Labeling
takegue
0
140
Dependency-based empty category detection via phrase structure trees
takegue
0
110
A simple pattern-matching algorithm for recovering empty nodes and their antecedents
takegue
0
160
Other Decks in Technology
See All in Technology
IaC コードを資産へ:AWS CDK 社内ライブラリと横断展開 / aws-summit-japan-2026
gotok365
10
1.6k
iOS アプリの「これって不具合ですか?」を AI に調べてもらう
miichan
0
140
脱SaaS!FDEを支えるプロビジョニングと分離設計
knih
0
300
入門!AWS Blocks
ysuzuki
1
190
Deep Data Security 機能解説
oracle4engineer
PRO
2
120
サイバーエージェントにおけるAI推進戦略と変革への取り組み
shotatsuge
0
540
Agile and AI Redmine Japan 2026
hiranabe
4
480
AI 不只幫你寫 Code: 當專案從 300 暴增到 1500, 我們如何撐住 DevOps
appleboy
0
220
AIチャット検索改善の3週間
kworkdev
PRO
2
170
「ビジネスがわかるエンジニア」とは何か?
ryooob
0
300
“詰む”前に仕組みを作れ 〜技術の波に溺れないためのキャッチアップ術〜
takasyou
7
3.8k
40代で“やっとエンジニアになれた”――閉じた学びを開き、空の青さを知る / 20260628 Naoki Takahashi
shift_evolve
PRO
4
860
Featured
See All Featured
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.4k
Marketing to machines
jonoalderson
1
5.5k
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
1.1k
Docker and Python
trallard
47
3.9k
So, you think you're a good person
axbom
PRO
2
2.1k
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
400
What's in a price? How to price your products and services
michaelherold
247
13k
The browser strikes back
jonoalderson
0
1.3k
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
860
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.8k
The untapped power of vector embeddings
frankvandijk
2
1.8k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Transcript
つかわれるデータプラットフォーム 〜デザイン編〜 फ़ี %BUB1MBUGPSN.FFUVQ
͜ΕΛ͓͢͠Δਓ फ़ีʢ!UBLFHVF %BUB1MBUGPSN .FFUVQ 3FUUZιϑτΣΞΤϯδχΞ $PSF7BMVF σʔλΞʔΩςΫςΟϯά σʔλͷՁΛ࠷େԽ͢ΔΈઃܭͷ࣮ݱ
ࣥච׆ಈ ʮ༏ઌֶशʹΑΔਪનจ͔Βͷݟग़͠நग़ʯ03ֶձ ʮͬͯΈΑ͏ʂ ػցֶशʢ4PUXBSF%FTJHOʣʯ ʮࢼֶͯ͠Ϳ ػցֶशೖʯ ʮσʔλج൫ͻͱΓ"EWFOU$BMFOEBSʯ /FX ଞʜ
None
None
分析上で発生する悲しみ %BUB1MBUGPSN .FFUVQ
分厚いjoin (わからない)
依存関係を壊したくなくて乱立するオレオレview
整合性が保てるか不安なダッシュボード群
%BUB1MBUGPSN .FFUVQ これらは設計(デザイン)の失敗が原因
分析のためのデザイン %BUB1MBUGPSN .FFUVQ 注意を払うべきデザインの3つの観点をさっくり紹介
42- 1ZUIPO 3 分析のためのデザイン: 42-WT1ZUIPOʁ 利用者を想定した言語(インタフェース)選びも選定基準のひとつ • データアクセスのため目的特化 • 汎用的なプログラムが書きづらい
• エンジンごとに命令セット変わる • コードの保守・運用しづらい • 汎用的なプログラム描きやすい • ライブラリも充実... • 機械学習等への接続も比較的容易 • コードの保守・運用はしやすい
データをディメンションテーブルとファクトテーブルに分けて整理 分析のためのデザイン: εϊʔϑϨʔΫεΩʔϚ %BUB1MBUGPSN .FFUVQ ディメンジョンテーブル: テーブルは非正規化状態で保持 ファクトテーブル: ディメンションに対して集計
ԣ࣋ͪ ॎ࣋ͪ 分析のためのデザイン: ԣ࣋ͪ WTॎ࣋ͪ *% ଐੑ ଐੑ 1 John
Hoge 2 Ben Fuga *% ଐੑ 1 属性1 John 1 属性2 Ben 2 属性1 Ben 2 属性2 Ben • 型制約をつけやすい • 補完がききやすい • 記述が冗長になりやすい • ピボットテーブル向き • 制約の保持が厳しい
BigQuery上での実践: Rettyでの事例 %BUB1MBUGPSN .FFUVQ
データフロー 依存の方向性 データ 置き場
データフロー 依存の方向性 データ 置き場 ディメンション ファクト 原則 横持ち 各 Projectは
指標から選ぶ ビューで 依存関係の明示 単方向の依存 だいたいSQL
イベント層 %BUB1MBUGPSN .FFUVQ - イベントログ系のレコードテーブルを整形、構造化する。 - クロスプラットフォームである程度共通に使えるような構造化 (自前のログ基盤, Firebase, GoogleAnalytics
...) - 不要なカラムや前処理等も行う
エンティティ層 %BUB1MBUGPSN .FFUVQ ドメインにおける主要なエンティティについてまとめる - プライマリテーブル(core); - joinの手間を減らし、使いやすい形式に構造化 - ユニーク制約等を実現
- as-was分析のために各entittyでhistoryを構築 - ディメンジョンテーブル(dim__xxx): 分析カスタム定義のディメンジョン
指標層 %BUB1MBUGPSN .FFUVQ - ファクトテーブルの構築する - 特定の指標の最小粒度(grain)の構築 - 同じデータセット内では、必ず同じ指標を持つ 指標に着目したグルーピング
- 指標のバージョニングの実現(自動生成)
%BUB1MBUGPSN .FFUVQ Q. 誰のためのデザイン?
%BUB1MBUGPSN .FFUVQ 分析者 ステークホルダ 意思決定者 データ基盤 開発者 アプリケーション 開発者 Q.
誰のためのデザイン?
%BUB1MBUGPSN .FFUVQ 分析者 ステークホルダ 意思決定者 データ基盤 開発者 アプリケーション 開発者 転送基盤
分析基盤 レポーティング 基盤 ログ基盤 ヒトとヒトのつなぎめに価値を作る: デザインの問題 Q. 誰のためのデザイン?
☺ %BUB1MBUGPSN .FFUVQ つかいやすい基盤でみんなを幸せになろう!
%BUB1MBUGPSN .FFUVQ