tutorial principiantes para node libro desde descubriendo cero node.js redis

node.js - principiantes - npm redis select database



Redis & Node.js: Todas las teclas (3)

Instalar node_redis

npm install node_redis

Luego hago lo siguiente para obtener todos los datos clave.

var redis =   require(''redis''), client =  redis.createClient(); client.multi() .keys(''*'', function (err, replies) { // NOTE: code in this callback is NOT atomic // this only happens after the the .exec call finishes. console.log("MULTI got " + replies.length + " replies"); replies.forEach(function (reply, index) { console.log("Reply " + index + ": " + reply.toString()); client.get(reply, function(err, data){ console.log(data); }); }); }) .exec(function (err, replies) {});

Pregunta básica: utilizando Node.js me gustaría obtener todas las claves en mi redis db. Mi redis db tiene este aspecto cuando llamo las teclas * ;

  1. aXF
  2. x9U
  3. a ver

Así que cada registro que tengo, tiene una clave única, generada como una cadena aleatoria. Ahora me gustaría llamar a algo como foreach (clave en Redis) y obtener todas las claves en el redis. ¿Sería posible realizar una consulta similar a "SELECT * FROM Redis" con Node.js & Redis


Claro, deberá instalar el módulo redis para nodejs que se puede encontrar en https://github.com/mranney/node_redis .

npm install node_redis

Actualizar

El comando anterior ya no está disponible. Puedes usar lo siguiente:

npm install redis

Entonces harías:

var redis = require(''redis''), client = redis.createClient(); client.keys(''*'', function (err, keys) { if (err) return console.log(err); for(var i = 0, len = keys.length; i < len; i++) { console.log(keys[i]); } });

En general, no siempre querrá devolver todas las claves (el rendimiento será malo para conjuntos de datos más grandes), pero esto funcionará si solo está probando cosas. Incluso hay una buena advertencia en la documentación de Redis :

Advertencia: considere KEYS como un comando que solo debe usarse en entornos de producción con extremo cuidado. Puede arruinar el rendimiento cuando se ejecuta contra grandes bases de datos. Este comando está destinado a operaciones de depuración y especiales, como cambiar el diseño de su espacio de teclas. No use KEYS en su código de aplicación regular. Si está buscando una manera de encontrar claves en un subconjunto de su espacio de teclas, considere usar conjuntos.


npm install node_redis

ya no está disponible Use esto en su lugar -

npm install redis