Redis
 sql >> Database >  >> NoSQL >> Redis

Verifica se esiste un valore in un elenco già Redis

Le tue opzioni sono le seguenti:

  1. Utilizzo di LREM e sostituirlo se è stato trovato.
  2. Mantenimento di un SET separato insieme al tuo LIST
  3. Scorrere in sequenza la LIST finché non trovi l'oggetto o raggiungi la fine.

Le liste Redis sono implementate come http://en.wikipedia.org/wiki/Linked_list, da qui le limitazioni.

Penso che la tua migliore opzione sia mantenere un SET duplicato . Questo è ciò che tendo a fare. Pensalo come un indice extra. In ogni caso, assicurati che le tue azioni siano atomiche con MULTI -EXEC o script Lua.