Azure Cache for Redis와 함께 Redis 모듈 사용
Azure Cache for Redis를 사용하면 Redis 모듈을 라이브러리로 사용하여 핵심 Redis 소프트웨어에 더 많은 데이터 구조와 기능을 추가할 수 있습니다. Enterprise 계층 캐시를 만들 때 모듈을 추가합니다.
Enterprise 캐시 만들기에 대한 자세한 내용은 빠른 시작: Redis Enterprise 캐시 만들기을 참조하세요.
모듈은 오픈 소스 Redis 4.0에서 도입되었습니다. 모듈은 검색 기능과 같은 기능과 블룸 및 쿠쿠 필터와 같은 데이터 구조를 추가하여 Redis의 사용 사례를 확장합니다.
Redis 모듈의 범위
Azure Cache for Redis의 Enterprise 계층에서 몇 가지 자주 사용되는 모듈을 사용할 수 있습니다.
모듈 | Basic, Standard 및 Premium | Enterprise | Enterprise Flash |
---|---|---|---|
RediSearch | 예 | 예 | 예(미리 보기) |
RedisBloom | 예 | 예 | 아니요 |
RedisTimeSeries | 예 | 예 | 아니요 |
RedisJSON | 예 | 예 | 예 |
참고 항목
현재 Azure Cache for Redis에 모듈을 수동으로 로드할 수 없습니다. 모듈 버전을 수동으로 업데이트하는 것도 불가능합니다.
활성 지역 복제와 함께 모듈 사용
RediSearch
및 RedisJSON
모듈만 활성 지역 복제와 동시에 사용할 수 있습니다.
이러한 모듈을 사용하여 활성-활성 구성에서 동기화되는 캐시 그룹 간에 검색을 구현할 수 있습니다. 또한 활성-활성 구성에서 JSON 구조를 검색할 수 있습니다.
클라이언트 라이브러리 지원
표준 Redis 클라이언트 라이브러리는 각 모듈에 대해 다양한 지원을 제공합니다. 일부 모듈에는 클라이언트 지원을 추가하는 특정 라이브러리가 있습니다. 각 모듈의 Redis 설명서 페이지에서 지원하는 클라이언트 라이브러리에 대한 자세한 내용을 확인합니다.
캐시에 모듈 추가
Enterprise 계층 캐시를 만들 때 모듈을 추가해야 합니다. 새 캐시를 만들 때 모듈을 추가하려면 Enterprise 계층 캐시의 고급 탭에 있는 설정을 사용합니다.
사용 가능한 모든 모듈을 추가하거나 설치할 특정 모듈만 선택할 수 있습니다.
Important
Azure Cache for Redis 인스턴스를 만들 때 모듈을 사용하도록 설정해야 합니다.
자세한 내용은 빠른 시작: Redis Enterprise 캐시 만들기를 참조하세요.
모듈
새 Enterprise 캐시를 만들 때 다음 모듈을 사용할 수 있습니다.
RediSearch
RediSearch 모듈은 짧은 대기 시간 성능과 강력한 검색 기능을 결합하여 캐시에 실시간 검색 엔진을 추가합니다.
기능은 다음과 같습니다.
- 다중 필드 쿼리
- 집계
- 접두사, 퍼지 및 음성학 기반 검색
- 자동 완성 제안
- 지역 필터링
- 부울 쿼리
또한 RediSearch는 보조 인덱스로 작동하여 캐시를 키-값 구조 이상으로 확장하고 보다 정교한 쿼리를 제공할 수 있습니다.
RediSearch에는 KNN(K Nearest Neighbors) 검색과 같은 벡터 유사성 쿼리를 수행하는 기능도 포함되어 있습니다. 이 기능을 사용하면 Azure Cache for Redis를 벡터 데이터베이스로 사용할 수 있습니다. 이는 의미 체계 응답 엔진 또는 기계 학습 모델에서 생성된 포함 벡터를 비교해야 하는 다른 애플리케이션과 같은 AI 사용 사례에 유용합니다.
RediSearch는 실시간 인벤토리, 기업 검색 및 외부 데이터베이스 인덱스 생성을 비롯한 다양한 사용 사례에서 사용할 수 있습니다. 자세한 내용은 RediSearch 설명서 페이지를 참조하세요.
Important
RediSearch 모듈에는 Enterprise
클러스터링 정책 및 NoEviction
제거 정책을 사용해야 합니다. 자세한 내용은 Enterprise 클러스터링 및 메모리 정책을 참조하세요.
RedisBloom
RedisBloom은 Redis 서버에 블룸 필터, 쿠쿠 필터, count-min sketch 및 top-k의 4가지 확률적 데이터 구조를 추가합니다. 이러한 각 데이터 구조는 더 빠른 속도와 더 나은 메모리 효율성에 대한 대가로 완벽한 정확도를 희생하는 방법을 제공합니다.
데이터 구조 | 설명 | 예제 애플리케이션 |
---|---|---|
블룸 및 쿠쿠 필터 | 항목이 (a) 확실히 집합에 없는지 또는 (b) 잠재적으로 집합에 있는지 알려 줍니다. | 이메일이 이미 사용자에게 전송되었는지 확인 |
Count-min sketch | 스트림의 이벤트 빈도를 결정합니다. | IoT 디바이스가 섭씨 0도 미만의 온도를 보고한 횟수를 계산합니다. |
Top-k | 가장 자주 본 항목 k 개를 찾습니다. |
전쟁과 평화에서 가장 자주 사용되는 단어를 알아 냅니다. (예를 들어, k = 50으로 설정하면 책에서 가장 많이 사용된 50개의 단어가 반환됩니다) |
블룸 및 쿠쿠 필터는 서로 유사하지만 각각 고유한 장점과 단점이 있으며 이는 이 설명서의 범위를 벗어납니다.
자세한 내용은 RedisBloom을 참조하세요.
RedisTimeSeries
RedisTimeSeries 모듈은 캐시에 처리량이 많은 시계열 기능을 추가합니다. 이 데이터 구조는 대량의 수신 데이터에 최적화되어 있으며 다음을 포함하여 시계열 데이터로 작업할 수 있는 기능을 포함합니다.
- 집계된 쿼리(예: 평균, 최댓값, 표준 편차 등)
- 시간 기반 쿼리(예: 시작 시간 및 종료 시간)
- 다운샘플링/데시메이션
- 보조 인덱싱을 위한 데이터 레이블 지정
- 구성 가능한 보존 기간
이 모듈은 IoT 원격 분석, 애플리케이션 모니터링 및 변칙 검색과 같은 스트리밍 데이터 모니터링과 관련된 많은 애플리케이션에 유용합니다.
자세한 내용은 RedisTimeSeries를 참조하세요.
RedisJSON
RedisJSON 모듈은 JSON 형식 데이터를 저장, 쿼리 및 쿼리하는 기능을 추가합니다. 이 기능은 문서와 유사한 데이터를 캐시에 저장하는 데 유용합니다.
기능은 다음과 같습니다.
- JSON 표준에 대한 완전한 지원
- 개체, 숫자, 배열 및 문자열을 포함한 모든 JSON 데이터 형식에 대한 광범위한 작업
- 문서 내의 요소를 선택하고 업데이트하기 위한 전용 구문 및 빠른 액세스
RedisJSON 모듈은 Redis 서버 내에서 통합된 인덱스 생성 및 데이터 쿼리를 제공하기 위해 RediSearch 모듈과 함께 사용하도록 설계되었습니다. 두 모듈을 함께 사용하면 JSON 개체 내에서 특정 데이터 포인트를 빠르게 검색하는 강력한 도구가 될 수 있습니다.
RedisJSON의 몇 가지 일반적인 사용 사례에는 제품 카탈로그 검색, 사용자 프로필 관리, JSON 구조화된 데이터 캐싱과 같은 애플리케이션이 있습니다.
자세한 내용은 RedisJSON을 참조하세요.
참고 항목
이 FT.CONFIG
명령은 모듈 구성 매개 변수 업데이트를 지원하지 않습니다. 그러나 관리 API를 사용할 때 모듈을 구성하는 인수를 전달하여 이 작업을 수행할 수 있습니다. 예를 들어 REST API, Azure CLI 또는 PowerShell과 함께 args
매개 변수를 사용하여 RedisBloom 모듈의 ERROR_RATE
및 INITIAL_SIZE
속성을 구성하는 샘플을 볼 수 있습니다.