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
Looker BEACON 2021 / How we implemented Scaleba...
Search
Naoki Ainoya
June 23, 2021
Technology
0
2.8k
Looker BEACON 2021 / How we implemented Scalebase Analytics with Looker
Looker BEACON 2021 / Looker組み込みアナリティクスによるScalebase分析機能の展開
Naoki Ainoya
June 23, 2021
Tweet
Share
More Decks by Naoki Ainoya
See All by Naoki Ainoya
Salesforce Application Development with GitHub Actions and sfdx-cli
ainoya
1
3.7k
Scalebase Analytics powered by Looker
ainoya
0
2.2k
SPIFFE in Action
ainoya
4
1.5k
How Developer Support Works
ainoya
10
2.5k
リクルートマーケティングパートナーズでのDeployGate活用事例
ainoya
2
4.4k
[RMPxQuipper meetup #3]開発のための開発~スマホアプリ向けe2eテストの検証導入事例を通じて~
ainoya
1
2.2k
How to play Scala on dockerized infrastructure
ainoya
4
2.9k
prevs.io開発の裏側とコンテナ仮想化時代のAPI運用
ainoya
4
2.4k
ビルドパイプラインツールをGoで作った話
ainoya
3
2.5k
Other Decks in Technology
See All in Technology
AWS re:Invent 2024 re:Cap Taipei (for Developer): New Launches that facilitate Developer Workflow and Continuous Innovation
dwchiang
0
160
re:Invent2024 KeynoteのAmazon Q Developer考察
yusukeshimizu
1
130
Godot Engineについて調べてみた
unsoluble_sugar
0
370
2025年に挑戦したいこと
molmolken
0
150
Goで実践するBFP
hiroyaterui
1
120
re:Invent 2024のふりかえり
beli68
0
110
シフトライトなテスト活動を適切に行うことで、無理な開発をせず、過剰にテストせず、顧客をビックリさせないプロダクトを作り上げているお話 #RSGT2025 / Shift Right
nihonbuson
3
2.1k
商品レコメンドでのexplicit negative feedbackの活用
alpicola
1
340
Kotlin Multiplatformのポテンシャル
recruitengineers
PRO
2
150
Docker Desktop で Docker を始めよう
zembutsu
PRO
0
150
2024年活動報告会(人材育成推進WG・ビジネスサブWG) / 20250114-OIDF-J-EduWG-BizSWG
oidfj
0
130
The future we create with our own MVV
matsukurou
0
2k
Featured
See All Featured
Navigating Team Friction
lara
183
15k
Java REST API Framework Comparison - PWX 2021
mraible
28
8.3k
Building an army of robots
kneath
302
45k
Build The Right Thing And Hit Your Dates
maggiecrowley
33
2.5k
Unsuck your backbone
ammeep
669
57k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
49
2.2k
How to train your dragon (web standard)
notwaldorf
89
5.8k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
98
18k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
132
33k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
7
570
Understanding Cognitive Biases in Performance Measurement
bluesmoon
27
1.5k
Transcript
Looker組み込みアナリティクスによる Scalebase分析機能の展開 BEACON Japan 2021 Naoki Ainoya / Alp, Inc.
自己紹介 • Naoki Ainoya • SRE @ Alp, Inc. •
Scalebaseの開発・運用
本日お話すること Scalebaseに分析機能を実装するにあたり… • Looker選定に至った背景 • 組み込みAnalyticsの実装方式と構成 • 実運用・開発フロー • 導入後の成果・反響
サブスクリプションビジネス効率化・収益 最大化プラットフォーム
Scalebaseが対象とするビジネスモデル
契約・請求・分析のオペレーションを一気通貫で管理 SFAや会計システムと連携し、シームレスなオペレーションを実現
契約・請求・分析のオペレーションを一気通貫で管理 SFAや会計システムと連携し、シームレスなオペレーションを実現
Scalebaseの分析機能 • Scalebase内のデータを リアルタイムに可視化する 分析ダッシュボードを提供 • Looker組み込みアナリティクス (Embed SSO)で Scalebaseサービス内に埋め込み
顧客に展開
Lookerを採用した理由 サービスに組み込み可能なBIソリューションをいくつか検証し、Lookerを採用 検討時の要件: • 人・時間のリソースが限られている状況で、素早く立ち上げること • 急激なサービスの成長にも耐えられる作りになっていること
Lookerを採用した理由 検討時の要件: • 人・時間のリソースが限られている状況で、MVP(Minimum Viable Product)を素早 く立ち上げ、改善できること • Developer Experienceが重要
→LookMLの高い表現力・開発のしやすさ 定義のGit管理ができ、変更管理・レビュー・リリース管理がしやすい →Embed SSOによる組み込みとダッシュボード開発の容易さ
Lookerを採用した理由 検討時の要件: • 急激なサービスの成長にも耐えられる作りになっていること →Looker自体がパフォーマンスのボトルネックになりづらいアーキテクチャ →負荷に応じてデータウェアハウスのアーキテクチャを将来変更して捌ける (小さく始められ、かつ処理が重くなってもこちらで対応でき、手詰まりとならない)
他BIツールの検討時に問題になったこと • 自社サービスへの組み込み方法 • ユーザーアカウントのプロビジョニング方法
組み込みのしやすさ • シンプルな機構で実装が容易だった
組み込みのしやすさ ①組み込みURL生成リクエスト
組み込みのしやすさ ①ダッシュボードURL 生成リクエスト ②サーバサイドでダッシュボードURL生成、API キーで署名 (事前にLookerからAPIキーを取得)
組み込みのしやすさ ②サーバサイドでダッシュボードURL生成、API キーで署名 (事前にLookerからAPIキーを取得) • URL生成時に、Lookerへのアクセス権限やLookerダッ シュボードで使用するユーザ属性(ユーザIDなど)をパラ メータとして付与して生成 • 生成URLをAPIキーで署名するため
第三者が不正に生成・改ざんすることは困難 • APIキーは事前に取得して使用するため、URL生成の 都度Lookerに問い合わせる必要が無いので楽
組み込みのしやすさ ①ダッシュボードURL 生成リクエスト ②サーバサイドでダッシュボードURL生成、API キーで署名 (事前にLookerからAPIキーを取得) ③生成されたURLでLooker ダッシュボードをiframe呼び 出し
ユーザアカウントのプロビジョニング方法 • アカウントの発行 • BIサービス側と自社サービス側のアカウントの同期
ユーザアカウントのプロビジョニング方法 ③生成されたURLでLooker ダッシュボードをiframe呼び 出し このとき、Looker側にユーザーアカウントが 自動作成される ScalebaseサーバからLookerに対して都度ア カウント発行処理等は必要無い
ユーザアカウントのプロビジョニング方法 ③生成されたURLでLooker ダッシュボードをiframe呼び 出し このとき、Looker側にユーザーアカウントが 自動作成される ScalebaseサーバからLookerに対して都度ア カウント発行処理等は必要無い 事前のアカウント 払い出し処理が不要
まとめ:Lookerを組込み分析で使用するメリット • スケーラビリティのあるアーキテクチャ • LookMLによるダッシュボード、データモデルのメンテナンス容易性 • 組込み実装のしやすさ • ユーザアカウントのプロビジョニングが楽 その結果・・・
結果として:リリースまでのタイムライン おかげさまで機能検討開始からリリースまで半年程度で完了 • PRD・要件定義: 1~2ヶ月 • BIソリューション選定: 1~2ヶ月 • Looker社リードのもとPoC:
1ヶ月 • 実装: 2~3ヶ月 (Lookerのプロフェショナルサービス利用) PoC、実装はLookerチームの支援でスピード感持って進められた。感謝!
メンバー構成 全員兼務あり、限られたメンバー構成で無理なく進行 • PM: 1名 • デザイン: 1名 • フロント:
1名 • バックエンド: 1名 • SRE: 1名
全体構成・開発フロー • Lookerと接続するデータインフラの構成 • LookMLダッシュボード・データモデルの開発フロー
全体構成 • データ基盤無い状態から最小構成で始める • データ規模に応じアーキテクチャを変更して いく方針 • LookerからAurora MySQLを直接参照する 構成
◦ リアルタイム性を重視
重い集計の逃し方 • MySQLでは重すぎる処理が出てきたら、S3 とAthenaで集計する処理で補助
重い集計の逃し方 • LookerのPersistent Derived Table(PDT)機 能を使って重い集計処理は一時テーブルに キャッシュ可能 • 簡単なETLならLookerだけで実現可能
データ規模に応じたなめらかな拡張 • データ規模に応じアーキテクチャを変更 • LookerからMySQLへの参照をやめる • AWS Athena + Federated
Queryによって データ同期の遅延を損なうことなく切り替え • LookMLに大規模な変更をせずに無停止で 変更を実現
LookML開発フロー • Lookerのエディタ上で編集し、Lookerインスタンスに反映するフロー • 素早く開発できるようにする • かつ、安全なリリースを行えるようにする必要がある →Git連携を生かしてGitHub上でCI/CDを構築して開発・運用
LookML開発フロー • Looker本番・開発インスタンス用に2リポジトリ構成
LookML開発フロー • GitHub Actionsを活用して運用自動化、安全にリリース • gitリポジトリでダッシュボード定義を管理できる利点が活躍 ※Looker 7.20からデプロイ元ブランチを選択可能になったため、現在は1リポジトリで実現可能
補足: デザイン面 ダッシュボードのデザインをLooker上でどう表現するか • LookerのビルトインのVisualizationを利用する場合は、 見た目のカスタマイズある程度できるが、妥協は必要 • ただ、拡張の余地は多いにある
デザイン面: 独自Visualizationによる拡張 • Custom Visualizationを使用してタイル部分を自前で実装可能 • 実際にmultiple_valueのコードをフォークしてデザインを 少し変えて使用している
デザイン面: API・SDKによる拡張 • API/SDKを使用してiframe呼び出しをやめて完全に自前デザインにすることも可能 • 実際にフィルタ部分をiframe外で自前実装している iframe iframe外の実装
リリース後の反響 • 多くのフィードバックをいただいた • 可視化に対するニーズは多様 • 様々な可視化の切り口がある(経理担当者・事業企画者・経営者etc..) • まだまだこれからだが、要望に応える分析機能を提供していく ◦
入金状況・コホート・レイヤーケーキチャートなど続々と対応している • 一般的なSaaS開発と同様、顧客の声に耳を傾けひたすら改善あるのみ
まとめ • Looker採用によってScalebaseの分析機能を素早く立ち上げることができた • スタートアップにおいて人・時間の制約がある状況でも無理なく実現 • LookMLのおかげでダッシュボード定義もブラックボックス化しにくく運用面の不安 が少ない • Lookerが機能で対応していない設定部分もCIでの定義自動生成などである程度カ
バーしてしまえるのもConfiguration as Codeの良さ • Lookerは社内BIだけでなく、プロダクトで顧客向けの分析機能を提供したい場合に もおすすめです
We’re hiring! • データの力で サブスクリプションビジネスの 世界を変えましょう • https://thealp.co.jp • https://herp.careers/v1/alpinc