quantilesGK
quantileGK와 비슷하게 동작하지만, 단일 패스로 여러 분위수 수준을 계산할 수 있으므로 개별 분위수 함수를 각각 호출하는 것보다 더 효율적입니다.
Greenwald-Khanna 알고리즘은 데이터 스트림에서 분위수를 매우 효율적으로 계산하는 데 사용되는 알고리즘입니다.
이 알고리즘은 2001년에 Michael Greenwald와 Sanjeev Khanna가 제안했습니다.
이 알고리즘은 매우 효율적이며, 항목당 O(log n) 공간과 O(log log n) 시간만 사용합니다(n은 입력 크기).
또한 정확도도 매우 높아, 제어 가능한 정확도로 근사 분위수 값을 제공합니다.
구문
accuracy— 분위수의 정확도입니다. 상수 양의 정수입니다. 정확도 값이 클수록 오류는 작아집니다. 예를 들어accuracy인수가 100으로 설정되면 계산된 분위수는 높은 확률로 1%를 넘지 않는 오류를 가집니다. 계산된 분위수의 정확도와 알고리즘의 계산 복잡도 사이에는 상충 관계가 있습니다.UInt*level— 분위수 수준입니다. 0에서 1 사이의 하나 이상의 상수 부동소수점 수입니다.Float*
expr— 컬럼 값에 대한 표현식이며, 결과는 숫자 데이터 타입, Date 또는 DateTime이어야 합니다.(U)Int*또는Float*또는Decimal*또는Date또는DateTime
Array(Float64) 또는 Array(Date) 또는 Array(DateTime)
예시
GK 알고리즘으로 여러 분위수 계산
Query
Response
Query
Response