目次
概要
データ整備業でぶつかった5つの課題・データ整備人に求められる3つのスキル
1年間データ整備業をして得た作業的・組織的な効率化の知見と 実際に取り組んでいる弊社の温かみのある運用をご紹介します。 「俺はデータを出すAPIじゃないんだぞ」と思われている方の気持ちが少しでも晴れることを祈って。。。
スピーカー
shinaro iwaiさん(株式会社オプト)
@hogeta_
元々はサーバサイドエンジニアだったがひょんなことからデータ整備人をしている。 データエンジニアリング周りの話が好きで、敬虔なるBigquery信者。 趣味は筋トレ。
スライド
内容
- 自己紹介
- 岩井晋太郎
 - 株式会社オプト データテクノロジー部
 - 営業→アフィリエイター→エンジニア→データ整備人(現職)
 - BQ信者
 
 - 会社オプト
- Webの広告代理店
- ADPLAN
 - SpinAPP
 
 
 - Webの広告代理店
 - どんなデータを扱っているのか
- ADPLAN
 - GA360
 - TresureData
 - Adjust
 - Appsflyer
 - Firebase
 - POSデータ
 - 施策のデータ(SalesForceMarketingCloud)
 - 3rdパーティDMP
 
 - どんな依頼が来るのか
- BQ叩かせろ
 - ダッシュボード作れる?
 - KPI作れる?
 
 - 依頼内容は大別すると3つ
- 意思決定の材料が欲しい
 - 広告活用したい
 - 自由分析した
 
 - どこから抽出依頼がくるのか
- クライアントから
 - 社内から
- 上司
 - 営業
 - コンサル
 
 - 求められてるのは意思決定することではなく、示唆が欲しい
 - 意思決定するために必要なことの摺り合わせ
 - 反対に求められていないのは
- 意思決定
 - 統計的な知見による助言
 
 
 - どうやって解決している?
- SQL 70%
 - コミュニケーション25%
 - プログラミング 5%
 - BIとか
 
 - 結局やってることはSQL
 - 5つの課題
- 雑に依頼が来て辛い
 
- 「とりあえずデータだしてよ」
 - 何に使うかを聞くようにした
- 結果
- 自然と目的が添えられた上で依頼がくるようになった
 - 同時に自分自身のドメイン知見も向上した
 
 - そもそもデータを出さずに課題解決こともたまに減った
 
 - 結果
 - 依頼のフォーマットを作った
- 目的や期限、希望のアウトプットに漏れがないように
 - 結果:手戻りが圧倒的に減った
 
 
- SQLのレビューが辛い
 
- SQLが読みづらい理由
- 基本的に読みづらい
 - SQLがスパゲティ
 - データの仕様が分からない
 - レビューは基本的にGitHub
 
 - SQLスタイルガイドを書いた
- 結果:失敗
- BQのフォーマッターは役立たない
 
 
 - 結果:失敗
 - Google Colaboratory
- ビューでどんなことをしているのがわからないので、可視化してった
 - 結果;成功
- コストが増えるが重要度が高いモノや複雑なものがレビューしやすい
 - 可視化することで、、、
 
 
 
- 類似した依頼がきて辛い
 
- 期間を変えるだけ、過去に出したモノの焼き直しみたいな依頼
 - SQLを再利用しやすい形で作成する
- 結果:成功
 - SQLで変数を持ってファイルの先頭に書くようにした
 - 変数が定義できないエンジンには1行しかないCTE式を書く
 
 
- ノウハウが共有されにくい
 
- マニアックなSQLの小技とか共有されない
 - やったこと:GitHubにTipsを保存
- GitHubにSQLを書いて気付いたノウハウやデータ構造についてのTipsを溜めた
 - 結果:成功
 
 - やったこと:永続UDFの採用
- よく使う関数をこおに集約して保存する
 - 結果:成功
- ・・・
 
 
 
- 5. リソースが足りなくて辛い
- まだ未解決
 - やったこと:SQL勉強会を開催
- SQLを定常的に書かないとできるようにならない
 - SQLが書けるのと、扱うデータを理解するのは別の問題
 
 - やりたいことは民主化なのだけど、障壁を極限まで取り除いた状態での民主化が必要なんじゃないかと思った
 - やろうとしていること
- 一つのの行動ログを同じ形式に変換する抽象化インターフェースを作成
 
- webだろうが、appだろうが、同じ形式に揃えてやる
 - 表記揺れ改善とか
 
- ユーザー分析が容易に分析できるマート
 
- 1で作ろうとしているものを自由に
 
 
 
 - データ整備人に求められる3つのスキル
- 課題抽出する力
 
- データAPI化人間になる前に
 - なぜ必要?:データを出すために本質的な課題解決にならないことを認識させるため
 
- 高いSQL
 
- データ理解力
 
- 自分の扱うデータの不備
 
 
感想
- BigQueryの永続UDFは誰がどう管理しているのか、、、ちょっと気になった
 - 会場内が「あるある」という雰囲気に包まれたので、同じような問題に直面している人は多いように感じた
 
