Redis
 sql >> Base de données >  >> NoSQL >> Redis

Comment stocker un tableau d'objets dans Redis ?

La chose que j'ai trouvé qui fonctionnait était de stocker la clé en tant qu'identifiant unique et de chaîner l'objet entier tout en stockant les données et en appliquant JSON.parse lors de son extraction.

Exemple de code :

client
    .setAsync(obj.deviceId.toString(), JSON.stringify(obj))
    .then((doc) => {
        return client.getAsync(obj.deviceId.toString());
    })
    .then((doc) => {
        return JSON.parse(doc);
    }).catch((err) => {
        return err;
    });

Bien que la chaîne puis l'analyse soient une opération lourde en termes de calcul et bloquent le serveur Node.js si la taille de JSON devient importante. Je suis probablement prêt à prendre un coup pour une moindre complexité car je sais que mon JSON ne serait pas énorme, mais il faut garder cela à l'esprit lors de cette approche.