redis는 인덱싱을 직접 지원하지 않으며 직접 유지 관리해야 합니다.
범위가 아닌 고유 인덱스의 경우 간단히 인덱스를 KV 쌍으로 저장할 수 있으며 v는 기본 키를 저장할 수 있습니다. 범위 검색 또는 고유하지 않은 인덱스는 redis의 zset을 사용하여 구현해야 합니다. (추천 학습: Redis 비디오 튜토리얼)
전통적인 사용자 시스템의 예를 들어보세요
uid 用户id name 用户名 credit 用户积分 type 类型
해시셋에 직접 배치될 수 있습니다
hmset usr:1 uid 1 name aaa credit 10 type 0 hmset usr:2 uid 2 name bbb credit 20 type 1
uid로 검색하는 것은 빠르지만 쿼리 유형을 원할 경우 =1 사용자는 전체 스캔만 할 수 있습니다!
관계형 데이터베이스에서는 단순히 type
select * from usr where type=1
에 대한 인덱스를 생성하면 이러한 SQL을 효율적으로 실행할 수 있습니다. Redis에서는 또 다른 zset을 유지해야 합니다
zadd usr.index.type 0 0:1 zadd usr.index.type 0 1:2
모든 가중치는 0으로 설정되므로 값으로 직접 검색한 다음 통과할 수 있습니다
zrangebylex usr.index.type [1: (1;
위 내용은 레디스 인덱스란 무엇인가의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!