Upgrade to Pro — share decks privately, control downloads, hide ads and more …

データを用いてサービス品質の向上に貢献!! SREのプラクティスを用いた守りのデータ分析 / ...

データを用いてサービス品質の向上に貢献!! SREのプラクティスを用いた守りのデータ分析 / Using Data to Improve Service Quality! Defensive data analysis using SRE practices

登壇者名:三河内 拓也
登壇したイベントタイトル:GENBA #4 〜データサイエンティストの現場〜
登壇したイベントのURL:https://timeedev.connpass.com/event/329305/

More Decks by 株式会社ビットキー / Bitkey Inc.

Other Decks in Technology

Transcript

  1. 2 Copyright © 2024 Bitkey Inc. All right reserved. Outline

    1. 自己紹介 2. サービス紹介 3. 今回のテーマ 4. サービスレベルの基礎知識 5. サービスレベルの実践 - 計測編 6. サービスレベルの実践 - 活用編 7. まとめと今後の展望
  2. 4 Copyright © 2024 Bitkey Inc. All right reserved. 1.

    自己紹介 三河内 拓也 Takuya Mikouchi 2017 2020 データコンサル企業でデータアナリストとしてのキャ リアをスタート。様々な業界のデータ活用プロジェク トに従事 ビットキーにジョイン データエンジニア・データアナリスト・アナリティク スエンジニアとして、データ分析基盤の構築からデー タ活用まで一貫して担当 2023 SREチームにてサービスの信頼性の計測と運用を推進
  3. 9 Copyright © 2024 Bitkey Inc. All right reserved. 2.

    サービス紹介 homehubは住宅における、スマートロックによる出入りの管理を主軸とし、「暮らし」に関わる様々な体験を実現します
  4. 12 Copyright © 2024 Bitkey Inc. All right reserved. 今回の登壇タイトル

    3. 今回のテーマ データを用いてサービス品質の向上に貢献!! SREのプラクティスを用いた守りのデータ分析
  5. 13 Copyright © 2024 Bitkey Inc. All right reserved. 今回のテーマの背景

    データを用いてサービス品質の向上に貢献!! SREのプラクティスを用いた守りのデータ分析 3. 今回のテーマ
  6. 14 Copyright © 2024 Bitkey Inc. All right reserved. 今回のテーマの背景

    データを用いてサービス品質の向上に貢献!! SREのプラクティスを用いた守りのデータ分析 なぜこのテーマに取り組んでるのか? 守り寄りのテーマに注力している理由は? SREって何?データとの関わりは? 3. 今回のテーマ
  7. 15 Copyright © 2024 Bitkey Inc. All right reserved. 今回のテーマの背景:なぜサービス品質という守りのテーマに注力しているか

    データを用いてサービス品質の向上に貢献!! SREのプラクティスを用いた守りのデータ分析 • なぜこのテーマに取り組んでるのか?/守り寄りのテーマに注力している理由は? ◦ 事業のフェーズ的にEnterprise領域に注力している ▪ (マーケティング文脈でのデータサイエンスの営みは加速するフェーズにない) • ※セールス・マーケチーム主導でデータ活用は適切に行われてるというのもある ◦ 住宅・オフィス・スマートロック・鍵といった領域を扱うhomehub/workhubにおいては、品質 が担保されていることが大前提である => こういった事情があり、ビットキーのデータチームはサービス品質の向上にピンを止めてきた 3. 今回のテーマ
  8. 16 Copyright © 2024 Bitkey Inc. All right reserved. 今回のテーマの背景:SREのプラクティスとは?データとの関わりは?

    データを用いてサービス品質の向上に貢献!! SREのプラクティスを用いた守りのデータ分析 • SREのプラクティスを紹介する前に・・・ ◦ 皆さん「サービス品質を定量化して!」ってオーダーを受けたらどうアプローチしますか? 3. 今回のテーマ
  9. 17 Copyright © 2024 Bitkey Inc. All right reserved. 今回のテーマの背景:SREのプラクティスとは?データとの関わりは?

    データを用いてサービス品質の向上に貢献!! SREのプラクティスを用いた守りのデータ分析 • このあたりかなと ◦ アンケート収集と分析 ◦ アプリレビューの分析 ◦ 問い合わせ傾向の分析 3. 今回のテーマ
  10. 18 Copyright © 2024 Bitkey Inc. All right reserved. 今回のテーマの背景:SREのプラクティスとは?データとの関わりは?

    データを用いてサービス品質の向上に貢献!! SREのプラクティスを用いた守りのデータ分析 • どれも良いインサイトが得られると思います!が、以下のような悩みも出てきます・・・ ◦ アンケート収集と分析 → 😢上手くいってない現場にアンケートしづらい ◦ アプリレビューの分析 → 😢数が少ない。ちょっと辛辣・・・ ◦ 問い合わせ傾向の分析 → 😢全ての不満が問い合わせに来てるわけではない。問い合わせに繋が りづらい種類の不満もある 3. 今回のテーマ
  11. 19 Copyright © 2024 Bitkey Inc. All right reserved. 今回のテーマの背景:SREのプラクティスとは?データとの関わりは?

    データを用いてサービス品質の向上に貢献!! SREのプラクティスを用いた守りのデータ分析 • どれも良いインサイトが得られると思います!が、以下のような悩みも出てきます・・・ ◦ アンケート収集と分析 → 😢上手くいってない現場にアンケートしづらい ◦ アプリレビューの分析 → 😢数が少ない。ちょっと辛辣・・・ ◦ 問い合わせ傾向の分析 → 😢全ての不満が問い合わせに来てるわけではない。問い合わせに繋が りづらい種類の不満もある どれも定性データであるがゆえの悩み。定量データを使うアプローチを取りたくなります... 3. 今回のテーマ
  12. 20 Copyright © 2024 Bitkey Inc. All right reserved. 今回のテーマの背景:SREのプラクティスとは?データとの関わりは?

    • 定量データを使うアプローチとは... ◦ こちらある分野ではベストプラクティスが確立されています SREのサービスレベルというプラクティスです。 今回はこちらを基礎知識から実践方法まで紹介していこうと思います 3. 今回のテーマ
  13. 21 Copyright © 2024 Bitkey Inc. All right reserved. 4.

    サービスレベルの基礎知識
  14. 22 Copyright © 2024 Bitkey Inc. All right reserved. 4.

    サービスレベルの基礎知識 そもそもSREとは • Site Reliability Engineering • Software Engineeringの一分野であり、システムの運用と信頼性を向上させることを目的としている ◦ 主に以下のような領域を担当 ▪ システムやサービスの信頼性の計測と向上 ▪ インフラ管理 ▪ ソフトウェア開発の運用面の向上(DevOps, CI/CD…) ▪ インシデント管理 • その他色々 • 職種名としても用いる
  15. 23 Copyright © 2024 Bitkey Inc. All right reserved. 4.

    サービスレベルの基礎知識 サービスレベルとは。。。例えばこういう指標です アプリによる解錠成功率 (homehubで計測している指標例) ・解錠ボタンを押した → その人がそのトビラを開 けていいかチェック → 解錠が成功した 顔認証成功率 (workhubで計測している指標例) ・顔をかざした → その人が今そのトビラを開けて いいかチェック → 解錠が成功した APIのリクエスト成功率 (メジャーな指標) ・その他レイテンシや稼働率など様々
  16. 24 Copyright © 2024 Bitkey Inc. All right reserved. 4.

    サービスレベルの基礎知識 こういった指標をサービスレベル指標(Service Level Indicator : SLI)と呼びます。以降SLIと表記 アプリによる解錠成功率 (homehubで計測している指標例) ・解錠ボタンを押した → その人がそのトビラを開 けていいかチェック → 解錠が成功した 顔認証成功率 (workhubで計測している指標例) ・顔をかざした → その人が今そのトビラを開けて いいかチェック → 解錠が成功した APIのリクエスト成功率 (メジャーな指標) ・その他レイテンシや稼働率など様々
  17. 25 Copyright © 2024 Bitkey Inc. All right reserved. 4.

    サービスレベルの基礎知識 指標(SLI)に対し、その目標値をサービスレベル目標(Service Level Objective : SLO)と呼びます ▪SLI/SLO/SLA サービスレベル指標:SLI ・サービス品質を数値または指標として表すもの ・ユーザ視点で測定され、ユーザにとってサービス が期待通りに機能しているかどうかを示す指標 例:SPIリクエスト成功率、homehubにおけるアプ リ解錠成功率、workhubにおける顔認証成功率 サービスレベル目標:SLO ・SLIに対する目標 例:顔認証成功率の目標値は99.9%(数値は仮) サービスレベル契約:SLA ・サービス提供対象との合意 ref:https://cloud.google.com/blog/ja/products/devops-sre/sre-fundamentals-sli-vs-slo-vs-sla
  18. 26 Copyright © 2024 Bitkey Inc. All right reserved. 5.

    サービスレベルの実践 - 計測編
  19. 27 Copyright © 2024 Bitkey Inc. All right reserved. 5.

    サービスレベルの実践 - 計測編 SLIは大枠以下のような流れで定義から計測まで行います 品質を計測したい体験(≒機 能,操作,タスク)を決定 SLIの定義 (算出方法など) データ準備(ロギング など) 集計・可視化
  20. 28 Copyright © 2024 Bitkey Inc. All right reserved. 5.

    サービスレベルの実践 - 計測編 STEP1:品質を計測したい体験(≒機能,操作,タスク)を決定 品質を計測したい体験(≒機 能,操作,タスク)を決定 SLIの定義 (算出方法など) データ準備(ロギング など) 集計・可視化 • CUJ(Critical User Journey)という考え方を用いて決定していくのが良いとされてます ◦ TODO: まずサービスの一連の体験をジャーニーで整理していきます ▪ ビットキーはユーザが達成できるコトが多岐に渡るので、この事例では、利用者が最も多い「賃貸住宅への入居」に スコープを絞りました 入居登録処理 homehubへの登録 招待メール送信 アカウント作成 部屋を開けれる デジタル上のカギを発行 部屋をアプリ解錠 部屋を開けれる パスコードの登録 入居前 入居予定日以降
  21. 29 Copyright © 2024 Bitkey Inc. All right reserved. 5.

    サービスレベルの実践 - 計測編 STEP1:品質を計測したい体験(≒機能,操作,タスク)を決定 品質を計測したい体験(≒機 能,操作,タスク)を決定 SLIの定義 (算出方法など) データ準備(ロギング など) 集計・可視化 • TODO: 整理したジャーニーの中で、中核となるタスクを選択します => これでCUJ完成です。次のSTEPから、この一つ一つのタスクをSLIとして定義していきます 入居登録処理 homehubへの登録 招待メール送信 アカウント作成 部屋を開けれる デジタル上のカギを発行 部屋をアプリ解錠 部屋を開けれる パスコードの登録 入居前 入居予定日以降
  22. 30 Copyright © 2024 Bitkey Inc. All right reserved. 5.

    サービスレベルの実践 - 計測編 STEP2:SLIの定義(算出方法など) 品質を計測したい体験(≒機 能,操作,タスク)を決定 SLIの定義 (算出方法など) データ準備(ロギング など) 集計・可視化 • 今回は「部屋をアプリ解錠」するという体験にピンを止めてSLIを定義していきます
  23. 31 Copyright © 2024 Bitkey Inc. All right reserved. 5.

    サービスレベルの実践 - 計測編 STEP2:SLIの定義(算出方法など) 品質を計測したい体験(≒機 能,操作,タスク)を決定 SLIの定義 (算出方法など) データ準備(ロギング など) 集計・可視化 • 弊社ではまず体験を行動/処理/結果に分解しフロー整理します w/エンジニア, PdM, ビジネス側 etc
  24. 32 Copyright © 2024 Bitkey Inc. All right reserved. [homehub]アプリ解錠成功率

    5. サービスレベルの実践 - 計測編 STEP2:SLIの定義(算出方法など) 品質を計測したい体験(≒機 能,操作,タスク)を決定 SLIの定義 (算出方法など) データ準備(ロギング など) 集計・可視化 • 最終的に算出式や計測定義に落とし込むことでSLIの定義が完了します。 解錠成功 スマート ロックと 接続開始
  25. 33 Copyright © 2024 Bitkey Inc. All right reserved. 5.

    サービスレベルの実践 - 計測編 STEP3:データ準備(ロギングなど) 品質を計測したい体験(≒機 能,操作,タスク)を決定 SLIの定義 (算出方法など) データ準備(ロギング など) 集計・可視化 • 以下のような流れで進めることが多いです ◦ データログ設計 ▪ どういう軸で集計したいかを想定し必要なデータを詰めていきます ◦ 分析基盤への連携 ▪ BigQueryやSnowflakeなどDWH製品へ連携 ▪ 次ページにアーキテクチャを掲載しておきます ◦ データ・ログ確認 ▪ 様々なケースのユーザ行動をトラッキングするため、なんか違う!みたいなパターンがあ るので、ちゃんと確認します
  26. 34 Copyright © 2024 Bitkey Inc. All right reserved. 5.

    サービスレベルの実践 - 計測編 参考:サービスレベル計測のためのアーキテクチャ
  27. 35 Copyright © 2024 Bitkey Inc. All right reserved. 5.

    サービスレベルの実践 - 計測編 STEP4:集計・可視化 品質を計測したい体験(≒機 能,操作,タスク)を決定 SLIの定義 (算出方法など) データ準備(ロギング など) 集計・可視化 • データ活用目的ではBIツールに可視化するようにしています ◦ BIツールは何でも良いです ◦ 構成は以下のような形にしています ▪ 昨日の成功率、直近n日間の成功率(スコアカード) ▪ 上記の推移 ▪ 詳細(表形式) • AppVersionなどの環境別 • 製品の種類別 • スマートロック別(別のページにしたほうが見やすい) • ユーザ別(別のページにしたほうが見やすい) • etc
  28. 36 Copyright © 2024 Bitkey Inc. All right reserved. •

    補足:SREはオブザーバビリティーツールを用いて集計・可視化しているケースが多いです ◦ 例:Datadog, New Relic, Grafana 5. サービスレベルの実践 - 計測編 STEP4:集計・可視化 品質を計測したい体験(≒機 能,操作,タスク)を決定 SLIの定義 (算出方法など) データ準備(ロギング など) 集計・可視化 ref:https://docs.datadoghq.com/ja/service_management/service_level_objectives/
  29. 37 Copyright © 2024 Bitkey Inc. All right reserved. •

    補足:SREはオブザーバビリティーツールを用いて集計・可視化しているケースが多いです ◦ GrafanaはBigQuery、DatadogはSnowflakeにクエリを投げれるので、相乗りするのはあり 5. サービスレベルの実践 - 計測編 STEP4:集計・可視化 品質を計測したい体験(≒機 能,操作,タスク)を決定 SLIの定義 (算出方法など) データ準備(ロギング など) 集計・可視化 https://grafana.com/grafana/plugins/grafana-bigquery-datasource/
  30. 38 Copyright © 2024 Bitkey Inc. All right reserved. •

    補足:SREはオブザーバビリティーツールを用いて集計・可視化しているケースが多いです ◦ ビットキーでは以下のように使い分けてます ▪ オブザーバビリティーツール(Datadog) • エンジニアによる監視用(どの処理でエラーでた?の深堀りまでできるのが特徴) • 簡単な定義のSLIの可視化 ▪ BIツール(Looker Studio w/BigQuery) • CSなどビジネス側へのデータ提供用 • 上記では表現しきれない、複雑な定義のSLIの可視化 5. サービスレベルの実践 - 計測編 STEP4:集計・可視化 品質を計測したい体験(≒機 能,操作,タスク)を決定 SLIの定義 (算出方法など) データ準備(ロギング など) 集計・可視化
  31. 39 Copyright © 2024 Bitkey Inc. All right reserved. 6.

    サービスレベルの実践 - 活用編
  32. 40 Copyright © 2024 Bitkey Inc. All right reserved. 6.

    サービスレベルの実践 - 活用編 • 活用についてはビットキーも試行錯誤中です・・・なのでポイントのみ紹介しようと思います
  33. 41 Copyright © 2024 Bitkey Inc. All right reserved. 6.

    サービスレベルの実践 - 活用編 監視をする前に、、、 • 監視をする前に、まず可視化した数値をエンジニアやCSなど必要なステークホルダを集めて数値を見 る会を開催するといいと思います ◦ 体感とのギャップ、期待値とのギャップを話して、アクションを決めていきます ▪ 例:調査しよう!改修しよう!問題ないから目標値(SLO)を定めて監視しよう
  34. 42 Copyright © 2024 Bitkey Inc. All right reserved. 6.

    サービスレベルの実践 - 活用編 監視編 • ビットキーではどのように監視しているか ◦ まずはSLOを決めます。初めは99.99%みたいなイケてる目標値を置きがちなんですが、顧客視 点を立ったうえで適切かつ現実的な数値を置くと良いと思います
  35. 43 Copyright © 2024 Bitkey Inc. All right reserved. 6.

    サービスレベルの実践 - 活用編 • ビットキーではどのように監視しているか ◦ まずはSLOを決めます。初めは99.99%みたいなイケてる目標値を置きがちなんですが、顧客視 点を立ったうえで適切かつ現実的な数値を置くと良いと思います ◦ その上で以下のような形で監視をしています ▪ エンジニアと定期的にSLI/SLOを眺める会を実施 • BIツールとオブザーバビリティーツールそれぞれ使用 • 1指標1ダッシュボートではなく、全指標を横断して眺められるようなビューを用意 すると良いです ▪ SLOを下回ったらSlack通知 • 通知がなったあとのアクションを決められると良いです • 興味がある方は知っておくと便利:エラーバジェット、バーンレート ▪ CSは問い合わせ起点で数値の確認したり、定期的に顧客状態を確認 という使い方 監視編
  36. 45 Copyright © 2024 Bitkey Inc. All right reserved. まとめ

    7. まとめと今後の展望 • 今回は「サービスレベル」について概要と実践方法を紹介させていただきました • この資料に沿っていくとサービス品質の定量化を実現できると思います • まずやってみたらいいと思うこととしては、社内にSREがいれば、この資料を見せて一度会話してみる と面白いかも知れないです
  37. 46 Copyright © 2024 Bitkey Inc. All right reserved. 今後の展望

    ◦ 結構SLIが揃ってきたので、KPI等のビジネス指標との相関性が高いSLIを発見したい ◦ 定性的なユーザ満足度を集め、影響度の高いSLIを発見したい ◦ これはデータサイエンスの分野だと思うので、成果がでたらこういった場で共有できればと思い ます 7. まとめと今後の展望
  38. 48 Copyright © 2024 Bitkey Inc. All right reserved. わたしたちは、ともに働く仲間を募集しております!

    職種の一例としては... 1. データアナリスト 2. SRE 3. Software Engineer(WEB、モバイル) 4. PdM 5. EM … など、様々なポジションで募集中です! ご興味があれば右のQRコードまたは、 X(Twitter):@i_am_miko__ までご連絡ください! We Are Hiring ! 7. まとめと今後の展望