Ada beberapa kemungkinan:
-
Berikut beberapa kode semu untuk melakukan ini dengan skrip Redis 2.6 Lua.
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!"
-
Singkatnya, Anda mungkin perlu menghentikan layanan dan melakukan ini dengan GET dan SET karena Anda mungkin tidak memiliki mekanisme penguncian. Jika Anda dapat menerapkan kunci, lihat http://redis.io/commands/setnx
-
Ada beberapa alat untuk memperbarui rdb. https://github.com/sripathikrishnan/redis-rdb-tools https://github.com/nrk/redis-rdb
Catatan, jawaban ini disesuaikan dengan jawaban saya untuk:Bekerja dengan objek bersarang di Redis?