Memorizzo i miei dati in redis. Conservo in una materia prima, guidata, creata e taglia.Redis/Ottieni tutte le chiavi e valori da redis con prefisso
Così ho definire quanto segue:
var dbclient1 = db.createClient();
dbclient1.hmset("doc:3743-da23-dcdf-3213", "date", "2015-09-06 00:00:01", "size", "203")
dbclient1.zadd("cache", 32131, "37463-da23-dcdf-3213")
Desidero vedere tutti i miei file nel mio db. Così provo il seguente:
dbclient1.hgetall("doc:*", function (err, res){
console.log(err)
console.log(res)
})
ma res è undefined
. Come posso farlo?
Non utilizzare i tasti sulla produzione, è troppo pericoloso. Usa SCAN invece, hai filtrato WITH MATCH e il cursore con COUNT - quindi sarà qualcosa come SCAN 0 COUNT 50 MATCH doc: * http://redis.io/commands/scan –
@lcostea: l'uso di 'KEYS' può o potrebbe non essere pericoloso a seconda di uno scenario particolare che l'OP non ha descritto. Certo, "SCAN" è più sicuro dal punto di vista delle prestazioni, ma poiché è solo un cursore, potrebbe non restituire tutte le voci o restituire più volte alcune voci, quindi deve essere usato con attenzione. –
@LiviuCostea Dire che è pericoloso senza dare una motivazione non è molto utile. –