¿Debo crear un nuevo cliente de Redis para cada conexión?

Estoy mirando este fragmento de código:

var addSnippet = function( req, res ) {
  getPostParams( req, function( obj ) {
      var r = redis.createClient();

      r.stream.on( 'connect', function() {
        r.incr( 'nextid' , function( err, id ) {
          r.set( 'snippet:'+id, JSON.stringify( obj ), function() {
            var msg = 'The snippet has been saved at <a href="/'+id+'">'+req.headers.host+'/'+id+'</a>';
            res.respond( msg );
          } );
        } );
      } );
    });
};

Es de aquihttp://howtonode.org/node-redis-fun.

No entiendo muy bien lo que está pasando. Por ejemplo, pensé que el cliente Redis es un tipo de interfaz entre la base de datos y el programador, pero ahora parece que están creando un nuevo cliente para cada envío de código (la aplicación que están incorporando en el tutorial es un fragmento de código). envía y almacena en una base de datos)!

Además, ¿dónde se almacenan las bases de datos Redis? ¿En el mismo directorio que el script? ¿Cómo puedo cambiar eso?

Estoy usando Redis con Node.js.

Respuestas a la pregunta(2)

Su respuesta a la pregunta