本文へ移動
Telemetry
データ品質 SQL レシピ

必須フィールドのヌル率を測定する

必要なアカウント、ステータス、または相関フィールドが表示されなくなっているイベント コントラクトを検索します。

初心者product_eventsレビュー済み 2026-07-27テスト済み アパッチ DataFusion 45.2.0

レビュー者 Telemetry 製品チーム . SQL の互換性、イベント コントラクト、合成出力、および操作上の注意事項. 基準と所有権を確認する

質問に回答しました

アカウント識別子の欠落率が許容できないほど高いイベント名はどれですか?

スキーマの互換性は分析の完全性を保証するものではありません。デプロイメントがセグメント化または結合に必要なフィールドへの入力を停止している間、Null 許容列は有効なままにすることができます。

イベント契約

クエリが期待するフィールド

フィールド種類なぜ存在するのか
timestamp_utcTimestampイベント発生時刻。
event_nameUtf8安定したイベント契約名。
account_idUtf8これらのイベントにはアカウント識別子が必要です。
producer_versionUtf8イベントを発行したアプリケーションのバージョン。
DataFusion SQL

クエリをコピーする

sql
SELECT
  event_name,
  producer_version,
  COUNT(*) AS events,
  SUM(CASE
    WHEN account_id IS NULL OR trim(account_id) = '' THEN 1
    ELSE 0
  END) AS missing_account_id,
  100.0 * SUM(CASE
    WHEN account_id IS NULL OR trim(account_id) = '' THEN 1
    ELSE 0
  END) / NULLIF(COUNT(*), 0) AS missing_rate_pct
FROM product_events
WHERE timestamp_utc >= now() - INTERVAL '24 hours'
GROUP BY event_name, producer_version
HAVING COUNT(*) >= 20
ORDER BY missing_rate_pct DESC, events DESC;

この読み取り専用クエリは、空の型付きテーブルに対して計画され、実行されます。 アパッチ DataFusion 45.2.0。決定論的なサンプル出力は合成され、個別にレビューされます。フィールド タイプ、しきい値、ビジネス定義を独自のデータと照合して検証します。 テスト方法を読んでください。

クエリ結果

イベントおよびプロデューサー別の欠落アカウント ID 率

ダッシュボード イベントには、バージョン固有の完全性回帰があります。

event_nameproducer_versioneventsmissing_account_idmissing_rate_pct
dashboard_viewedweb-18426,4201,18718.49
query_completedapi-9183,81070.18

合成出力例。運用上の決定に使用する前に、独自のイベント スキーマとしきい値に対してクエリを実行します。

Missing account ID rate by event and producer: Measure Required-Field Null Rate 結果例からの合成 missing_rate_pct 値の静的チャート
決定論的な出力例のインデックス可能な SVG。記事、ランブック、または出典を明示した設計レビューのためにダウンロードしてください。

例を再現する

パブリックフィクスチャをダウンロードする

JSON バンドルには、型付きイベント コントラクトが含まれています。 illustrative 入力行、正確な SQL、予想される出力、レビューメモ、およびエンジンのバージョン。 CSV には、表示された結果が含まれます。

SQL の仕組み

  1. 1CASE 式では、NULL と空の文字列の両方が欠落しているものとして扱われます。
  2. 2producer_version でグループ化すると、展開の回帰を簡単に分離できます。
  3. 3最小ボリューム ルールにより、少数の開発イベントがレポートを支配するのを防ぎます。

決定すべきエッジケース

  • イベント コントラクトのフィールドは、本当に必要な場合にのみ評価します。
  • 匿名製品イベントには正当に account_id が欠落している可能性があるため、別の完全性ルールを使用する必要があります。
  • 不明などのプレースホルダーは NULL ではありませんが、欠落している ID を隠すことができます。センチネル値を個別に測定します。

推奨されるダッシュボード

  • バー: missing_rate_pct (event_name および producer_version)
  • 傾向: 重要な契約の完了率
  • 表: 最近の行に必須フィールドがありません

アラートガイダンス

重要なイベント契約が、文書化された欠落フィールドの予算をかなりの量で超過した場合にアラートを送信します。

アラート設定を読む

レシピを活用する

関連する機器とガイド

分析を続ける

実際のイベントで実行する

テーブルを作成し、フィールドを調整して、結果を保存します

無料で始めて、構造化されたイベントを送信し、クエリ結果をグラフ、共有ダッシュボード ウィジェット、またはアラート入力として使用します。

API キーを取得する