Saltar al contenido
Telemetry
Explorar documentación
Conceptos y patrones de SQLActualizado el 28 de julio de 2026Revisado por los equipos editorial y de producto de Telemetry2 min de lectura

Usa esta documentación con tu agente de programación

Abra un paquete de mensajes enfocados para Claude Code, Codex, Cursor u otro agente de codificación, luego adáptelo al flujo de trabajo que se describe aquí.

Percentiles de latencia y distribuciones con SQL

Un promedio comprime una distribución en un número. Esto es útil para totales y tendencias amplias, pero puede ocultar las experiencias lentas que importan durante un incidente. Los percentiles responden a una pregunta diferente: p95 es el valor en el que o por debajo del cual caen aproximadamente el 95 por ciento de las observaciones.

Consultar varios puntos de la distribución.

Telemetry utiliza Apache DataFusion SQL. Utilice approx_percentile_cont para estimaciones prácticas de percentiles:

SELECT
  route_template,
  COUNT(*) AS requests,
  approx_percentile_cont(duration_ms, 0.50) AS p50_ms,
  approx_percentile_cont(duration_ms, 0.95) AS p95_ms,
  approx_percentile_cont(duration_ms, 0.99) AS p99_ms,
  MAX(duration_ms) AS maximum_ms
FROM api_request_events
WHERE timestamp_utc >= now() - INTERVAL '24 hours'
GROUP BY route_template
HAVING COUNT(*) >= 100
ORDER BY p95_ms DESC;

Mantenga el recuento de solicitudes en el resultado. Un percentil de un grupo pequeño es inestable y p99 no es significativo cuando un grupo contiene sólo un puñado de observaciones. Los resultados aproximados tampoco deben presentarse con precisión decimal artificial.

Interpretar la forma, no sólo la clasificación

Si p50, p95 y p99 aumentan juntos, es posible que todo el flujo de trabajo haya cambiado. Si p50 permanece estable mientras p99 aumenta, un subconjunto de solicitudes está experimentando latencia de cola. El máximo es útil para la investigación, pero un valor atípico no debería definir el rendimiento normal.

Agrupe solo por dimensiones que pueden cambiar una acción: plantilla de ruta, dependencia, versión, región o un nombre de operación delimitado. Las URL sin formato y el texto de consulta sin restricciones crean grupos de alta cardinalidad que son difíciles de comparar y pueden exponer valores confidenciales.

Los percentiles no son porcentajes. Una latencia p95 de 800 milisegundos no significa que el 95 por ciento de las solicitudes sean lentas; significa que alrededor del 95 por ciento se completó en ese valor o por debajo de él. Empareje el número con un objetivo revisado y una unidad explícita.

Utilice Receta de latencia API, receta de latencia de dependencia o receta de espera en cola para ver ejemplos probados. El guía de visualización de distribución explica cuándo un histograma es más revelador que tres puntos percentiles.

Función relacionada del producto

Ejecute DataFusion SQL de solo lectura sobre tablas de eventos estructurados y reutilice el resultado.

Responsabilidad y referencias técnicas

El equipo editorial de Telemetry es responsable de esta explicación; el equipo de producto revisa el comportamiento, los ejemplos y las limitaciones.

Consultar los criterios editoriales