데이터 구조를 가장 효율적으로 redis로 저장하고 검색하는 방법. 레코드는 사용자 이름 값에 의해 액세스되며 고유 할 것이며 데이터에 의해 날짜 및 카운터 값이 필요합니다.redis에서 정렬 가능한 데이터 구조를 사용하는 방법
또한, 레디 스이 시나리오에 대한 최선의 선택 (성능이 모든 것을 통해 여기에 우선합니다)입니다.
데이터 구조를 가장 효율적으로 redis로 저장하고 검색하는 방법. 레코드는 사용자 이름 값에 의해 액세스되며 고유 할 것이며 데이터에 의해 날짜 및 카운터 값이 필요합니다.redis에서 정렬 가능한 데이터 구조를 사용하는 방법
또한, 레디 스이 시나리오에 대한 최선의 선택 (성능이 모든 것을 통해 여기에 우선합니다)입니다.
정렬 된 항목은 score
값을 기준으로 자동으로 항목을 정렬합니다.이 값은 배정 밀도 부동 소수점 수에 대한 문자열 기반 값이 될 수 있습니다. SORT 명령을 사용하여 목록 및 세트를 즉시 정렬 할 수도 있습니다.
ZADD uniqueName 13733654484 stringData1 197625203673 stringData2
을 또는 당신은 카운터에 의해 정렬 할 수 있습니다 :
다시 분류 세트로 돌아가서, 당신은 긴 타임 스탬프를 사용하여 날짜별로 정렬 할 수 있습니다
는ZADD uniqueName 100 stringData1 101 stringData2
그것을 할 수있는 한 가지 방법이다 그.
SORT는 주문형 정렬을 수행합니다. 그것은 데이터 구조 내에 내장 된 자연 정렬이 아닙니다. 그러나 공정한만큼, 나는 나의 대답을 업데이트했다. 어떻게 두 값을 정렬 할 수 있습니까? 예제를 보여줄 수 있습니까? – raffian
SORT 명령을 사용하지 않았지만 대신 ZINTERSTORE를 사용했습니다. zinterstore tmp 2 nameByCounter WEIGHTS 1 2. 이렇게하면 카운터 및 날짜별로 데이터를 정렬 할 수 있습니다 (가중치 사용). 오, 점수가 ZADD에서 먼저 나와야한다는 것을 잊지 마십시오. 예 : ZADD 고유 이름 13733654484 stringData1 197625203673 stringData2. – FGRibreau
성능이 모든 것보다 우선 순위가 높으면 PHP를 사용하지 않아야합니다. – Oswald
@Oswald 다른 대안을 제안합니까? – Stacked