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
kiba ETLで小さく始めるデータ分析基盤構築
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Hiroto Fukui
November 28, 2018
Programming
280
3
Share
kiba ETLで小さく始めるデータ分析基盤構築
Hiroto Fukui
November 28, 2018
More Decks by Hiroto Fukui
See All by Hiroto Fukui
Deploy from slack
bary822
0
70
メールアドレスを深堀りする
bary822
2
1.2k
AR_migrationの例外.pdf
bary822
0
66
GraphQLを_Rubyで気軽に試す.pdf
bary822
0
340
Other Decks in Programming
See All in Programming
Tamach-sre-3_ANDPAD-shimaison93
mane12yurks38
0
240
Kubernetesでセルフホストが簡単なNewSQLを求めて / Seeking a NewSQL Database That's Simple to Self-Host on Kubernetes
nnaka2992
0
190
Everything Claude Code OSS詳細 — 5層構造の中身と導入方法
targe
0
160
Nuxt Server Components
wattanx
0
230
年間50登壇、単著出版、雑誌寄稿、Podcast出演、YouTube、CM、カンファレンス主催……全部やってみたので面白さ等を比較してみよう / I’ve tried them all, so let’s compare how interesting they are.
nrslib
4
650
「効かない!」依存性注入(DI)を活用したAPI Platformのエラーハンドリング奮闘記
mkmk884
0
290
AI時代の脳疲弊と向き合う ~言語学としてのPHP~
sakuraikotone
1
1.8k
20260320登壇資料
pharct
0
150
[PHPerKaigi 2026]PHPerKaigi2025の企画CodeGolfが最高すぎて社内で内製して半年運営して得た内製と運営の知見
ikezoemakoto
0
320
安いハードウェアでVulkan
fadis
1
870
RSAが破られる前に知っておきたい 耐量子計算機暗号(PQC)入門 / Intro to PQC: Preparing for the Post-RSA Era
mackey0225
3
110
KagglerがMixSeekを触ってみた
morim
0
360
Featured
See All Featured
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
120
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.3k
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
1
500
Efficient Content Optimization with Google Search Console & Apps Script
katarinadahlin
PRO
1
450
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
2
3.8k
Speed Design
sergeychernyshev
33
1.6k
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
370
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.5k
How Software Deployment tools have changed in the past 20 years
geshan
0
33k
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
170
What's in a price? How to price your products and services
michaelherold
247
13k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.3k
Transcript
kiba ETLで小さく始めるデー タ分析基盤構築 @bary822
self self.name => Hiroto Fukui self.sns => @bary822 self.titles =>
[‘app engineer’, ‘data engineer’] self.companies => [‘rakuten’, ‘grooves’] self.likes => [‘dog’, ‘camping’, ‘ruby]
Osaka Tokyo
None
本題
kiba ETL
kiba ETL gem データ分析で使える フレームワーク
E - Extract T - Transform L - Load
.csv height >= 100 weight >= 30 LargeDog table Extract
Transform Load
kiba https://github.com/thbar/kiba https://youtu.be/fxVtbog7pIQ
kiba - 全体像
kiba - Extract(Source)
kiba - Transform
kiba - Load(Destination)
Pros • CRubyだけで気軽に始められる ◦ DSL記法を覚えなくていい • シンプルな設計思想 ◦ 新しいメンバーも理解しやすい •
ドキュメントも(そこそこ)揃っている ◦ https://github.com/thbar/kiba/wiki
Cons • E、T、Lの単独実行が出来ない ◦ ETLのレールに乗っからない便利タスクとかは定義できない • シンプルゆえに安全に運用するための整備は自分でやる気 概が必要 ◦ エラー検知、多重起動防止、秘匿情報の管理とか
分析基盤構築のためにやったこと (より実践的な話)
Data Warehouse • Data Warehouse(DWH) = データ分析に特化したDB • 列指向データベースが望ましい •
ETLのLoad先になるイメージ
Data Warehouse https://en.wikipedia.org/wiki/Data_warehouse
Actionlog • ユーザーの行動ログ • url, http method, referrer, ip address
… • Rackレベルで取れる系のやつ • 35k行/h 位の量
Actionlog + 独自拡張フィールド • ユーザーの行動ログ • url, http method, referrer,
ip address … • Rackレベルで取れる系のやつ • 35k行/h 位の量 • ユーザーID • bot(スクレイピングなど)によるアクセスかどうか
つくったもの • アプリDBをDWHにコピーして同期 ◦ 重いクエリで負荷掛け放題(掛け放題ではない) • この求人を見ている他のユーザーが見ている求人をリコメンド • 変化点検出アルゴリズムの実装 ◦
CUSUM ◦ Change Finder • 外れ値検出アルゴリズムの実装 ◦ DBSCAN
!dev
None
None
ITリテラシー問題 • SQL書けない • それが何の役に立つのかわからない • 何をどうやって分析していいのか分からない
データの民主化
data dev sales marketing execs
None
None
Biz Dev • ビジネスメンバーを含めたdaily huddle • データ分析で解決したい課題を募集 • クエリをまとめたダッシュボード •
DWHに分析用のテーブル/Viewを作成 • 分析用アルゴリズムをライブラリ化
None
None
[WIP] 教育
https://www.fusioncharts.com/blog/data-education-democratization/
これからの計画 • SQL勉強会でもしようかな • BIツールの導入検討 ◦ SQL書かなくてもいいやつ • セルフサービスで勝手に分析してくれるようになったら最高で は
EOF