Saltar al contenido
Telemetry
Calidad de datos receta SQL

Medir la tasa de nulos de campos obligatorios

Encuentre contratos de eventos en los que un campo obligatorio de cuenta, estado o correlación esté desapareciendo.

Principianteproduct_eventsRevisado 2026-07-27Probado con Apache DataFusion 45.2.0

Revisado por el equipo de producto Telemetry en . Compatibilidad con SQL, contrato de eventos, resultados sintéticos y advertencias operativas. Revisar los estándares y la propiedad

Pregunta respondida

¿Qué nombres de eventos tienen una tasa de identificador de cuenta faltante inaceptable?

La compatibilidad de esquemas no garantiza la integridad analítica. Una columna que acepta valores NULL puede seguir siendo válida mientras una implementación deja de completar el campo necesario para la segmentación o las uniones.

Contrato de evento

Campos que espera la consulta

CampoTipoPor que existe
timestamp_utcTimestampHora de ocurrencia del evento.
event_nameUtf8Nombre del contrato de evento estable.
account_idUtf8Identificador de cuenta requerido para estos eventos.
producer_versionUtf8Versión de la aplicación que emitió el evento.
DataFusionSQL

Copiar la consulta

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;

Esta consulta de solo lectura se planifica y ejecuta en una tabla escrita vacía con Apache DataFusion 45.2.0. El resultado de la muestra determinista es sintético y se revisa por separado; valide tipos de campos, umbrales y definiciones comerciales con sus propios datos. Lea la metodología de prueba.

Resultado de la consulta

Tasa de ID de cuenta faltante por evento y productor

El evento del panel tiene una regresión de integridad específica de la versión.

event_nameproducer_versioneventsmissing_account_idmissing_rate_pct
dashboard_viewedweb-18426420118718,49
query_completedapi-918381070,18

Salida de ejemplo sintético. Ejecute la consulta con su propio esquema de eventos y umbrales antes de utilizarla para decisiones operativas.

Missing account ID rate by event and producer: gráfico estático de valores sintéticos de missing_rate_pct del resultado del ejemplo Measure Required-Field Null Rate
SVG indexable de la salida del ejemplo determinista. Descárguelo para ver un artículo, un runbook o una revisión de diseño con atribución.

Reproducir el ejemplo

Descargar el accesorio público

El paquete JSON incluye el contrato de evento escrito, illustrative filas de entrada, SQL exacto, resultado esperado, notas de revisión y versión del motor. El CSV contiene el resultado mostrado.

Cómo funciona el SQL

  1. 1La expresión CASE considera que faltan tanto NULL como una cadena vacía.
  2. 2La agrupación por producer_version hace que las regresiones de implementación sean más fáciles de aislar.
  3. 3La regla del volumen mínimo evita que un puñado de eventos de desarrollo dominen el informe.

Casos extremos para decidir

  • Evalúe únicamente un campo en contratos de eventos cuando sea realmente necesario.
  • Los eventos de productos anónimos pueden legítimamente carecer de account_id y deben utilizar una regla de integridad separada.
  • Un marcador de posición como desconocido no es NULL pero aún puede ocultar la identidad faltante; medir los valores centinela por separado.

Panel recomendado

  • Barras: missing_rate_pct por event_name y producer_version
  • Tendencia: tasa de finalización de contratos críticos
  • Tabla: filas recientes a las que les falta el campo obligatorio

Guía de alerta

Alerta cuando un contrato de evento crítico excede su presupuesto de campo faltante documentado en un volumen significativo.

Leer configuración de alerta

Pon la receta a trabajar

Instrumentación y guías relacionadas.

Continuar el análisis

Ejecútelo en eventos reales.

Crea una tabla, adapta los campos y guarda el resultado.

Comience gratis, envíe eventos estructurados y utilice el resultado de la consulta como un gráfico, un widget de panel compartido o una entrada de alerta.

Obtén una clave API