Latest web development tutorials

레디 스 HyperLogLog

레디 스에서 2.8.9 버전은 HyperLogLog 구조를 추가합니다.

레디 스 HyperLogLog베이스 입력 또는 부피 요소의 수가 매우 매우 크다는 것을 계산에 기초하여 필요한 공간이 항상 고정이며, 아주 작은 장점 HyperLogLog 통계적 알고리즘을 만들기 위해 사용된다.

각 키 HyperLogLog 내부 레디 스 만 당신은 가장 가까운 기지국 2 ^ 64 가지 요소를 계산할 수, 메모리 12 킬로바이트합니다. 이 때 계산베이스 더 대조적 모음의 메모리 집약적 소자.

그러나 HyperLogLog 때문 만 입력 요소 계산베이스를 기반으로하지만, 컬렉션 HyperLogLog은 각 입력 요소로 돌아 좋아하지되도록 입력 요소 자체를 저장하지 않는다.


기본은 무엇인가?

예를 들어, 상기 데이터 세트는 {1, 3, 5, 7, 5, 7, 8} 다음 데이터 세트의 세트의 카디널리티는 {1, 3, 5, 7, 8}베이스 (반복하지 소자) 5 점. 카디널리티 추정 오차가 허용 범위, 빠른 계산 기지에 있습니다.


다음은 작업 공정 HyperLogLog을 보여줍니다

redis 127.0.0.1:6379> PFADD w3bigkey "redis"

1) (integer) 1

redis 127.0.0.1:6379> PFADD w3bigkey "mongodb"

1) (integer) 1

redis 127.0.0.1:6379> PFADD w3bigkey "mysql"

1) (integer) 1

redis 127.0.0.1:6379> PFCOUNT w3bigkey

(integer) 3

레디 스 HyperLogLog 명령

다음 표는 HyperLogLog 레디 스 기본적인 명령에 대해 설명합니다 :

아니오. 명령 및 설명
(1) PFADD 핵심 요소 [요소 ...]
에 HyperLogLog에 지정된 요소를 추가합니다.
PFCOUNT 키 [키 ...]
반환 HyperLogLog 카디널리티 추정치를 제공.
3 PFMERGE의 destkey의 sourcekey [sourcekey ...]
하나 HyperLogLog에 여러 HyperLogLog