quantilesTimingWeighted
quantilesTimingWeighted
도입된 버전: v1.1
각 시퀀스 구성원의 가중치를 반영하여, 서로 다른 수준에서 숫자 데이터 시퀀스의 여러 분위수(quantile)를 동시에, 정해진 정밀도로 계산합니다.
이 함수는 quantileTimingWeighted와 동일하지만, 단일 패스로 여러 quantile 수준을 계산할 수 있어 개별 quantile 함수를 각각 호출하는 것보다 더 효율적입니다.
결과는 결정적이며(쿼리 처리 순서에 의존하지 않습니다), 웹 페이지 로딩 시간이나 백엔드 응답 시간과 같은 분포를 설명하는 시퀀스를 처리하도록 최적화되어 있습니다.
정확도
다음 조건을 만족하면 계산은 정확합니다.
- 값의 총 개수가 5670개를 넘지 않는 경우
- 값의 총 개수가 5670개를 초과하지만 페이지 로딩 시간이 1024ms 미만인 경우
그 외의 경우, 계산 결과는 16ms의 배수 중 가장 가까운 값으로 반올림됩니다.
참고
페이지 로딩 시간 분위수(quantile)를 계산할 때, 이 함수는 quantiles보다 더 효율적이고 정확합니다.
구문
매개변수
level— 분위수의 레벨입니다. 0에서 1 사이의 하나 이상의 상수 부동 소수점 수입니다.level값은[0.01, 0.99]범위에서 사용할 것을 권장합니다.Float*
인수
expr— 컬럼 값에 대한 표현식으로,Float*타입 숫자를 반환합니다. 음수 값이 함수에 전달되면 동작은 정의되지 않습니다. 값이 30,000(페이지 로딩 시간 30초 초과)보다 크면 30,000으로 간주됩니다.Float*weight— 시퀀스 요소의 가중치가 담긴 컬럼입니다. 가중치는 해당 값의 발생 횟수입니다.UInt*
반환 값
지정된 레벨과 동일한 순서로 구성된 분위수 배열입니다. Array(Float32)
예시
복수의 가중 타이밍 분위수 계산
관련 항목