Redis
 sql >> Baza danych >  >> NoSQL >> Redis

Wiele kluczy wskazujących na pojedynczą wartość w Redis (pamięć podręczna) za pomocą java

Posiadanie wielu kluczy wskazujących na tę samą wartość nie jest na razie obsługiwane w Redis, zobacz problem #2668.

Potrzebujesz obejścia.

Kilka pomysłów poniżej, prawdopodobnie oczywistych lub głupich :)

Może masz klucz pośredni:
- user_10id_123
- driver_5id_123
- id_123data_that_you_dont_want_to_duplicate

Możesz zaimplementować tę logikę w swoim kodzie klienta lub w niestandardowych skryptach Lua na serwerze i sprawić, by Twój kod klienta używał tych skryptów (ale nie wiem wystarczająco dużo, aby podać szczegóły).

Jeśli zaimplementujesz logikę pośrednią po stronie klienta, a dostępy są niezrównoważone, na przykład uzyskasz dostęp do danych za pomocą klucza użytkownika przez 99% czasu, a za pomocą klucza sterownika przez 1% czasu, warto unikać 2 klient-serwer wycieczki objazdowe w przypadku 99%. W tym celu możesz kodować przekierowania. Na przykład, jeśli pierwszym znakiem jest # reszta to dane. Jeśli pierwszym znakiem jest @ wtedy reszta jest właściwym kluczem.

  • user_10#data_that_you_dont_want_to_duplicate
  • driver_5@user_10


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Korzystanie z Redis SCAN w NODE

  2. Jackson deserializuje obiekt z listą interfejsów sprężyny

  3. Spring Data RedisTemplate:serializacja wartości i wartości HashValue

  4. Redis rozproszony przyrost z blokowaniem

  5. Mac(os x):Czy istnieje sposób na zainstalowanie TYLKO redis-cli?