블룸 필터 시작하기 - Amazon ElastiCache

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

블룸 필터 시작하기

ElastiCache는 요소가 집합의 멤버인지 확인하기 위한 공간 효율적인 확률적 데이터 구조를 제공하는 블룸 필터 데이터 구조를 지원합니다. 블룸 필터를 사용하면 오탐지가 발생할 수 있습니다. 필터는 요소가 집합에 추가되지 않았더라도 요소가 존재한다는 것을 잘못 나타낼 수 있습니다. 그러나 블룸 필터를 사용하면 거짓 부정을 방지할 수 있습니다. 즉, 요소가 집합에 추가되었더라도 요소가 존재하지 않는다는 잘못된 표시입니다.

fp 비율을 조정하여 잠재적 거짓 긍정의 비율을 워크로드에 대해 선호하는 비율로 설정할 수 있습니다. 용량(블룸 필터가 보유할 수 있는 항목 수), 크기 조정 및 크기 조정 외 속성 등을 구성할 수도 있습니다.

지원되는 엔진 버전으로 클러스터를 생성하면 Bloom 데이터 유형 및 관련 명령을 자동으로 사용할 수 있습니다. bloom 데이터 형식은 valkey-py, 및를 포함한 공식 Valkey 클라이언트 라이브러리의 Bloom 필터 명령 구문valkey-java과 API 호환됩니다valkey-go. 기존 Bloom 기반 Valkey 및 Redis OSS 애플리케이션을 ElastiCache로 쉽게 마이그레이션할 수 있습니다. 전체 명령 목록은 섹션을 참조하세요블룸 필터 명령.

블룸 관련 지표 BloomFilterBasedCmds, BloomFilterBasedCmdsLatencyBloomFilterBasedCmdsECPUs는 CloudWatch에 통합되어이 데이터 유형의 사용량을 모니터링합니다. 자세한 내용은 Valkey 및 Redis OSS에 대한 지표 단원을 참조하십시오.

참고
  • Bloom 필터를 사용하려면 ElastiCache Valkey 8.1 이상에서를 실행해야 합니다.

  • 블룸 데이터 형식은 다른 비-Valkey 기반 블룸 제품과 RDB 호환되지 않습니다.

블룸 필터 데이터 유형 개요

블룸 필터는 요소를 추가하고 요소가 존재하는지 확인할 수 있는 공간 효율적인 확률적 데이터 구조입니다. 필터가 추가되지 않았더라도 요소가 존재함을 잘못 나타내는 경우 거짓 긍정이 발생할 수 있습니다. 그러나 블룸 필터는 거짓 부정(추가된 경우에도 요소가 존재하지 않음을 잘못 나타냄)이 발생하지 않도록 보장합니다.

블룸 필터의 주요 설명서 소스는 valkey.io 설명서 페이지에서 확인할 수 있습니다. 여기에는 다음 정보가 포함됩니다.

블룸 크기 제한

단일 블룸 필터 객체의 메모리 사용량은 128MB로 제한됩니다. BF.INFO <key> SIZE 명령을 사용하여 Bloom 필터에서 사용하는 메모리 양을 확인할 수 있습니다.

블룸 ACLs

기존 데이터 유형별 범주(@string, @hash 등)와 마찬가지로 새 범주 @bloom이 추가되어 Bloom 명령 및 데이터에 대한 액세스 관리를 간소화합니다. 다른 기존 Valkey 또는 Redis OSS 명령은 @bloom 범주의 멤버가 아닙니다.

새로운 Bloom 명령을 포함하도록 업데이트된 기존 ACL 범주는 @read, @write 및 @fast의 3가지입니다. 다음 표는 Bloom 명령을 적절한 범주에 매핑하는 방법을 나타냅니다.

Bloom 명령 @read @write @fast @bloom

BF.ADD

y

y

y

BF.CARD

y

y

y

BF.EXISTS

y

y

y

BF.INFO

y

y

y

BF.INSERT

y

y

y

BF.MADD

y

y

y

BF.MEXISTS

y

y

y

BF.RESERVE

y

y

y

블룸 필터 관련 지표

블룸 데이터 구조와 관련된 다음 CloudWatch 지표가 제공됩니다.

CW 지표 단위 서버리스/자체 설계 설명

BloomFilterBasedCmds

개수

둘 다

읽기 및 쓰기 명령을 모두 포함한 블룸 필터 명령의 총 수입니다.

BloomFilterBasedCmdsLatency

마이크로초

자체 관리형

읽기 및 쓰기 명령을 포함한 모든 블룸 필터 명령의 지연 시간입니다.

BloomFilterBasedCmdsECPUs

개수

Serverless

읽기 및 쓰기 명령을 포함하여 모든 Bloom 필터 명령에서 사용되는 ECPUs.

블룸 필터 명령

블룸 필터 명령Valkey.io 웹 사이트에 설명되어 있습니다. 각 명령 페이지는 구문, 동작, 반환 값 및 잠재적 오류 조건을 포함하여 블룸 명령에 대한 포괄적인 개요를 제공합니다.

명칭 설명
BF.ADD

블룸 필터에 단일 항목을 추가합니다. 필터가 아직 없는 경우 항목이 생성됩니다.

BF.CARD

블룸 필터의 카디널리티를 반환합니다.

BF.EXISTS

블룸 필터에 지정된 항목이 포함되어 있는지 확인합니다.

BF.INFO

특정 블룸 필터의 사용 정보 및 속성을 반환합니다.

BF.INSERT

항목이 0개 이상인 블룸 필터를 생성하거나 기존 블룸 필터에 항목을 추가합니다.

BF.MADD

블룸 필터에 하나 이상의 항목을 추가합니다.

BF.MEXISTS

블룸 필터에 1개 이상의 항목이 포함되어 있는지 확인합니다.

BF.RESERVE

지정된 속성을 사용하여 빈 블룸 필터를 생성합니다.

참고

BF.LOAD는 ElastiCache에서 지원되지 않습니다. ElastiCache가 지원하지 않는 AOF 사용량에만 관련이 있습니다.