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

弊社の基幹システム、telemetry samplingしづらいんですけど...

MonotaRO PRO
November 13, 2026
85

弊社の基幹システム、telemetry samplingしづらいんですけど...

MonotaRO PRO

November 13, 2026

Transcript

35 slides
  1. このセッションで話すこと・話さないこと 話すこと • • 「samplingのしづらさ」について考察 ◦ 「システムとしては正常でも業務として異常」という状態 ◦ システムレベルと業務レベルのtelemetryの性質 ◦

    → しなくてよいものをsamplingしようとしてしまっていた モノタロウの基幹システムのObservabilityの現状と課題を紹介 話さないこと • samplingの手法そのもの • 具体的な設計、ツール、アーキテクチャの話 • レガシーな基幹システムの詳細 3/34
  2. モノタロウが扱う「間接資材」の特徴 ヘッド商品とロングテール商品の割合 [ヘッド] 間接資材の調達には ロングテール × 多品種 × 複雑な購買プロセス 80%

    金額 という性質がある → 買う頻度は少ないのに探すのも買うのも手間! [ロングテール] 20% 品目 20% 80% 手間 20% 80% 企業の購買品の構成イメージ 多 購 入 量 ・ 全 額 少 ヘッド ・購入プロセスの効率化がしやすい ・商品データ登録済 ・有利な条件で購入 ロングテール 例えば… ・リピート購入がない ・商品データ未登録 ・都度購入品 ・メンテが困難 ・拠点別購入品 ・見える化ができない 手袋 テープ 工具 ナット 6/34
  3. EC事業の成長モデル サイトが複 雑で探しづ らい すぐ 見つかる 利便性 System:サイト構造, 推薦枠, etc.

    時間節約 取扱商品数 増 購買体験 System:受発注, 在庫管理, etc. 取り扱い がある 物流キャパ は有限なの で全部は在 庫できない 売上 すぐ届く 品揃え改善 商品採用へ (省略) 11/34
  4. EC事業の成長モデル 購買 行動 サイトが複 雑で探しづ らい パラメータ 最適化 DS: 検索・推薦,

    SEO, 広告, etc. すぐ 見つかる 利便性 System:サイト構造, 推薦枠, etc. 時間節約 どの商品やユーザーに何を適用するかを最適化 Systemは最適化に使える選択肢を用意 取扱商品数 増 購買体験 取り扱い がある 物流キャパ は有限なの で全部は在 庫できない パラメータ 最適化 System:受発注, 在庫管理, etc. 売上 すぐ届く 績 DS: 発注点計算, 在庫判断, etc. 実 荷 出 品揃え改善 商品採用へ (省略) 入 ・ 注 発 受 12/34
  5. モノタロウの強み 購買 行動 サイトが複 雑で探しづ らい ビジネス要求を 反映しやすい 内製システム 取扱商品数

    増 パラメータ 最適化 DS: 検索・推薦, SEO, 広告, etc. すぐ 見つかる 利便性 蓄積した 購買行動や実績 時間節約 のデータ 購買体験 System:サイト構造, 推薦枠, etc. どの商品やユーザーに何を適用するかを最適化 Systemは最適化に使える選択肢を用意 取り扱い がある 物流キャパ は有限なの で全部は在 間接資材 庫できない 在庫しづらい ロングテール パラメータ 最適化 System:受発注, 在庫管理, etc. 売上 すぐ届く 績 DS: 発注点計算, 在庫判断, etc. 実 荷 出 品揃え改善 商品採用へ (省略) 入 ・ 注 発 受 13/34
  6. システムモダナイゼーション 購買 行動 DS: 検索・推薦, SEO, 広告, etc. パラメータ 最適化

    サイトが複 ビジネス要求を すぐ 雑で探しづ より早く反映できる 見つかる らい 変更容易性がほしい ↓ System:サイト構造, 推薦枠, etc. ドメインモデリング マイクロサービス化 どの商品やユーザーに何を適用するかを最適化 取扱商品数 など Systemは最適化に使える選択肢を用意 増 利便性 時間節約 購買体験 取り扱い がある 物流キャパ は有限なの で全部は在 庫できない パラメータ 最適化 System:受発注, 在庫管理, etc. 売上 すぐ届く 績 DS: 発注点計算, 在庫判断, etc. 実 荷 出 品揃え改善 商品採用へ (省略) 入 ・ 注 発 受 15/34
  7. 考察:telemetryには「システム」と「業務」の層がある 業務レベル 数日〜数ヶ月という大きなタイムスケール、マスタ系とjoinしたい 「システムとしては正常でも業務として異常・重要」が発生しうる 受注 発注 入荷 在庫 出荷 返品

    会計 質で勝負 N=1が重要 sampling不可 システムレベル 秒〜分でその場で完結する 統計値とエラーが残ればmonitoringやtroubleshootできる Web API バッチ SQL発行 error 量で勝負 duration 傾向とエラーで十分 sampling可 20/34
  8. 考察:telemetryには「システム」と「業務」の層がある 在庫補充 発注 入荷 注文 1 受注 出荷 配送 注文

    2 業務レベル システムレベル https://opentelemetry.io/docs/concepts/observability-primer/ を改変 21/34
  9. システムレベルのObservability 購買 行動 サイトが複 雑で探しづ らい パラメータ 最適化 DS: 検索・推薦,

    SEO, 広告, etc. すぐ 見つかる システムが正しく動作し、 価値提供を行えているか 利便性 System:サイト構造, 推薦枠, etc. 時間節約 どの商品やユーザーに何を適用するかを最適化 Systemは最適化に使える選択肢を用意 取扱商品数 増 購買体験 取り扱い がある 物流キャパ は有限なの で全部は在 庫できない パラメータ 最適化 System:受発注, 在庫管理, etc. 売上 すぐ届く 績 DS: 発注点計算, 在庫判断, etc. 実 荷 出 品揃え改善 商品採用へ (省略) 入 ・ 注 発 受 22/34
  10. 業務レベルのObservability 購買 行動 サイトが複 雑で探しづ らい 「ビジネスの成長 サイクルが正しく 回せているか?」 取扱商品数

    という疑問に 増 答えるためのO11y パラメータ 最適化 DS: 検索・推薦, SEO, 広告, etc. すぐ 見つかる 利便性 System:サイト構造, 推薦枠, etc. 時間節約 どの商品やユーザーに何を適用するかを最適化 Systemは最適化に使える選択肢を用意 購買体験 取り扱い がある 物流キャパ は有限なの Q. いつ誰のどの で全部は在 最適化(自動・手動) 庫できない の効果は どれくらいだったか e.g.,ABテスト風 パラメータ 最適化 System:受発注, 在庫管理, etc. 売上 すぐ届く 績 DS: 発注点計算, 在庫判断, etc. 実 荷 出 品揃え改善 商品採用へ (省略) 入 ・ 注 発 受 23/34
  11. 考察:telemetryには「システム」と「業務」の層がある • • 業務レベルのtelemetry ◦ N=1(完全性)が重要 → DB等に確実に記録する ◦ いわゆるO11yのパイプラインでは欠損可能性がある

    システムレベルのtelemetry ◦ 統計値やエラーサンプルがあれば良いので、N=1を捨てて流量稼ぐ DB等で確実に記録 揮発覚悟で流量稼ぐ 24/34
  12. 再訪:なぜ「samplingしづらい」と感じたのか Q. なぜ「samplingしづらい」と感じたのか A. 次の2つの合わせ技 • レガシーな部分(業務とシステムが結合)が残っていて、 業務レベルとシステムレベルのtelemetryの境界が曖昧 → 業務調査にシステムレベルのtelemetryが必要になることもある

    • 「システム的には正常だが業務として異常・重要」が後から判明するため、その 場でsampling判定することはできない → 本来samplingするべきでないものをsamplingしようとしてしまっていた 26/34
  13. 課題:telemetryの層をつなげるcorrelationとinterfaceをどうするか 業務 ID e_id ↔ trac ID 務 業 ↔

    d BigQuery e_ i • Datadog(システムレベル)とBigQuery(業務レベル)をどうつなぐか ◦ 例 システムレベルのspanに業務IDを入れる 調査で結局マスタや実績テーブルとのjoinが必要だからBigQuery使いがち ◦ ツールの使い分けは?どっちが正?など考えないと... tr ac • https://opentelemetry.io/docs/concepts/observability-primer/ を改変 32/34
  14. まとめ • • 「samplingのしづらさ」について考察 ◦ 「システムとしては正常でも業務として異常」という状態 ◦ システムレベルと業務レベルのtelemetryの性質 ◦ →

    しなくてよいものをsamplingしようとしてしまっていた モノタロウの基幹システムのObservabilityの現状と課題を紹介 ◦ データ基盤(DB→BigQuery同期)によって業務レベルのO11yが成立 ◦ 課題① trace_id ↔ 業務ID の N:N correlation問題 ◦ 課題② BigQuery vs Datadogのツール&データ分散問題 33/34

More Decks by MonotaRO