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

Aggiornamento del valore Redis

Ci sono alcune possibilità:

  1. Ecco uno pseudocodice per farlo con Redis 2.6 Lua scripting.

    for userid in users:
        EVAL 'local obj = cjson.decode(redis.call("GET", KEY[1])); obj.subobj.newjsonkey = ARGV[1]; redis.call("SET", KEY[1], cjson.encode(obj));' 1 userid "new value!"
    
  2. A parte ciò, potrebbe essere necessario interrompere il servizio e farlo con GET e SET poiché probabilmente non disponi di un meccanismo di blocco in atto. Se puoi imporre un blocco, consulta http://redis.io/commands/setnx

  3. Ci sono alcuni strumenti per aggiornare un rdb. https://github.com/sripathikrishnan/redis-rdb-tools https://github.com/nrk/redis-rdb

Nota, questa risposta è stata adattata alla mia risposta a:lavorare con oggetti nidificati in Redis?