At have flere nøgler, der peger på samme værdi, understøttes ikke i Redis i øjeblikket, se problem #2668.
Du har brug for en løsning.
Nogle ideer nedenfor, muligvis indlysende eller dumme :)
Måske have en mellemnøgle:
- user_10
→ id_123
- driver_5
→ id_123
- id_123
→ data_that_you_dont_want_to_duplicate
Du kan implementere den logik i din klientkode eller i brugerdefinerede Lua-scripts på serveren og få din klientkode til at bruge disse scripts (men jeg ved ikke nok om det til at give detaljer).
Hvis du implementerer indirektionslogikken på klientsiden, og hvis adgange er ubalancerede, for eksempel vil du få adgang til data via brugernøgle 99 % af tiden og via drivernøgle 1 % af tiden, kan det være værd at undgå 2 klient-server rundrejser for 99 % tilfældet. Til dette kan du kode omdirigeringer. For eksempel, hvis første tegn er #
så er resten data. Hvis det første tegn er @
så er resten den faktiske nøgle.
user_10
→#data_that_you_dont_want_to_duplicate
driver_5
→@user_10