sql >> Database >  >> NoSQL >> Redis

Geneste javascript-objecten opslaan in redis - NodeJS

Allereerst ondersteunt redis alleen de volgende gegevenstypen:

  1. String
  2. Lijst
  3. Instellen
  4. Hash
  5. Gesorteerde set

U moet objecten opslaan als string in beide redis en in het geheugen opgeslagen.

node-memcached parseert/stringificeert de gegevens automatisch. Maar node-redis niet.

U kunt echter uw eigen serialisatie-/deserialisatiefuncties voor uw app implementeren.

De manier waarop node-memcached tekenreeks een object is als volgt:

if (Buffer.isBuffer(value)) {
    flag = FLAG_BINARY;
    value = value.toString('binary');
} else if (valuetype === 'number') {
    flag = FLAG_NUMERIC;
    value = value.toString();
} else if (valuetype !== 'string') {
    flag = FLAG_JSON;
    value = JSON.stringify(value);
}

Het parseert de opgehaalde tekst ook op deze manier:

switch (flag) {
    case FLAG_JSON:
        dataSet = JSON.parse(dataSet);
        break;
    case FLAG_NUMERIC:
        dataSet = +dataSet;
        break;
    case FLAG_BINARY:
        tmp = new Buffer(dataSet.length);
        tmp.write(dataSet, 0, 'binary');
        dataSet = tmp;
        break;
}



  1. MongoDB diacriticInSensitive zoekopdracht toont niet alle geaccentueerde (woorden met diakritische teken) rijen zoals verwacht en vice versa

  2. Hoe definieer ik methoden in een Mongoose-model?

  3. MongoDB countDocuments()

  4. Verschil tussen het opslaan van een ObjectId en zijn tekenreeksvorm, in MongoDB