이벤트 계약
쿼리가 예상하는 필드
| 필드 | 유형 | 그것이 존재하는 이유 |
|---|---|---|
| timestamp_utc | Timestamp | 실행 완료 시간. |
| job_name | Utf8 | 안정적인 논리적 작업 이름입니다. |
| queue_wait_ms | Float64 | 예약된 시간부터 시작 시간까지의 시간(밀리초)입니다. |
| duration_ms | Float64 | 시작 후 실행 기간입니다. |
DataFusion SQL
쿼리 복사
sql
SELECT
job_name,
COUNT(*) AS runs,
approx_percentile_cont(queue_wait_ms, 0.50) AS p50_wait_ms,
approx_percentile_cont(queue_wait_ms, 0.95) AS p95_wait_ms,
approx_percentile_cont(duration_ms, 0.95) AS p95_run_ms
FROM job_runs
WHERE timestamp_utc >= now() - INTERVAL '24 hours'
GROUP BY job_name
HAVING COUNT(*) >= 20
ORDER BY p95_wait_ms DESC;이 읽기 전용 쿼리는 빈 유형의 테이블에 대해 계획되고 실행됩니다. 아파치 DataFusion 45.2.0. 결정론적 샘플 출력은 합성되어 별도로 검토됩니다. 자신의 데이터에 대해 필드 유형, 임계값 및 비즈니스 정의를 검증합니다. 테스트 방법론을 읽어보세요.
쿼리 결과
p95 대기열 작업별 대기
보고서 생성은 p95에서 실행하는 것보다 기다리는 데 약 두 배의 시간이 걸립니다.
generate_report
44,200 ms
comparison 21,800 ms
sync_subscription
7,200 ms
comparison 8,400 ms
send_email
460 ms
comparison 930 ms
| job_name | runs | p50_wait_ms | p95_wait_ms | p95_run_ms |
|---|---|---|---|---|
| generate_report | 340 | 1,800 | 44,200 | 21,800 |
| sync_subscription | 980 | 420 | 7,200 | 8,400 |
| send_email | 12,400 | 80 | 460 | 930 |
합성 예제 출력. 운영 결정에 사용하기 전에 자체 이벤트 스키마 및 임계값에 대해 쿼리를 실행하세요.
예제 재현
공공 픽스처 다운로드
JSON 번들은 타입이 지정된 이벤트 계약을 포함합니다. illustrative 입력 행, 정확한 SQL, 예상 출력, 검토 참고 사항 및 엔진 버전. CSV에는 표시된 결과가 포함됩니다.
SQL 작동 방식
- 1대기열 대기는 작업이 예약될 때 시작되고 실행이 시작되면 끝납니다.
- 2p50과 p95 간 격차는 지속적으로 느린 대기열과 간헐적인 백로그를 구별합니다.
- 3p95 대기와 p95 런타임을 비교하면 용량이나 작업 코드가 더 큰 기여를 하는지 알 수 있습니다.
결정해야 할 극단적인 경우
- 예약된 시간과 시작된 시간에 대해 하나의 시계 또는 UTC 타임스탬프를 사용합니다.
- 예약된 크론 지연 및 대기열 지연에는 별도의 필드가 필요할 수 있습니다.
- 재시도는 반복 작업을 격리할 수 있도록 시도 횟수를 보존해야 합니다.
추천 대시보드
- 막대: p50 및 p95 작업별 대기
- 추세: p95 대기열별 대기
- 표: 현재 대기열에 있는 가장 오래된 항목
레시피를 활용해 보세요
관련 계측 및 가이드
소스 데이터 정의
이 분석을 위한 이벤트 스키마
분석 계속하기
실제 이벤트에서 실행
테이블을 만들고, 필드를 조정하고, 결과를 저장하세요.
무료로 시작하고, 구조화된 이벤트를 보내고, 쿼리 결과를 차트, 공유 대시보드 위젯 또는 알림 입력으로 사용하세요.