sql >> Databasteknik >  >> NoSQL >> Redis

redis - Använda hash

Ja, det är relaterat till effektivitet.

Vi bad den alltid hjälpsamma Pieter Noordhuis, en av Redis kärnutvecklare, om input, och han föreslog att vi skulle använda Redis-haschar. Hashes i Redis är ordböcker som kan kodas i minnet mycket effektivt; Redis-inställningen "hash-zipmap-max-entries" konfigurerar det maximala antalet poster en hash kan ha samtidigt som den kodas effektivt. Vi fann att denna inställning var bäst runt 1000; något högre och HSET-kommandona skulle orsaka märkbar CPU-aktivitet. För mer information kan du kolla in zipmap-källfilen.

Små hash är kodade på ett speciellt sätt (zipmaps), det vill säga minneseffektivt, men gör operationerna O(N) istället för O(1). Så med en zipmap med 100 000 fält istället för 100 zipmaps med 1 000 fält får du inga minnesfördelar, men alla dina operationer går 100 gånger långsammare.



  1. MongoDB:ovillkorliga uppdateringar?

  2. MongoDB $sum Aggregation Pipeline Operator

  3. Välj dokument där alla värden i ett matrisfält finns i en annan matris

  4. Hur man kommer igång med databasautomatisering