질문은 제목과 동일합니다. Key의 퍼지 쿼리를 의미하는 것이 아니라, 값의 퍼지(키워드) 쿼리를 의미하는 점 참고하시기 바랍니다.
예를 들어주세요:
위의 사용자 데이터가 있을 경우 해시 형태로 저장되며, 정렬을 원하시면
으아아아그런데 연령별로 정렬해야 하고 키워드 쿼리(퍼지 매칭 사용자 이름)도 구현해야 한다면 어떻게 구현해야 할까요?
淡淡烟草味2017-04-24 16:02:35
간단하고 적은 양의 퍼지 쿼리를 어느 정도 달성할 수 있는 대체 방법이 있습니다.
사용자 정보 작성 시 사용자 이름을 Key로 분할하여 사용자 ID를 기록합니다
다음에 퍼지 쿼리를 수행할 때 j
을 입력하면 SET
컬렉션에서 jack
및 jackson
두 항목을 찾을 수 있습니다. 물론 이 두 값은 사용자 ID로 대체될 수 있습니다. 그런 다음 사용자 ID에 따라 사용자 해시 정보를 쿼리합니다.
이 방법은 쿼리 조건이 단일이고 필드 길이가 짧은 시나리오에만 적합합니다. If: 게시물 제목과 게시물 기사의 퍼지 일치가 동시에 작동하지 않습니다. 제목은 계속 시도할 수 있지만 내용은 확실히 달성되지 않을 것입니다.
물론 Redis는 본질적으로 이에 적합하지 않으므로 다른 솔루션이 있는 경우 이를 달성하기 위해 다른 솔루션을 사용하는 것이 좋습니다.
巴扎黑2017-04-24 16:02:35
완곡한 방법은 Lua 스크립트를 직접 작성하는 것입니다.
또는 데이터 세트가 크지 않은 경우 클라이언트 측에서 직접 필터링하세요.
퍼지 쿼리가 어려운 요구사항이라면 Solr 또는 Elasticsearch로 전환하는 것이 좋습니다.
黄舟2017-04-24 16:02:35
Redis에는 이러한 풍부한 쿼리 방법이 없으며 퍼지 쿼리는 키에서만 수행할 수 있으므로 풍부한 요구 사항을 충족할 수 없습니다. 고속 스토리지를 원한다면 Redis를 사용하는 것이 좋습니다. 비즈니스 로직을 수행하고 풍부한 쿼리 방법을 갖고 싶다면 MongoDb를 사용하는 것이 좋습니다