sql >> Database teknologi >  >> NoSQL >> Redis

Redis sæt vs hash

Redis-hashes er gode til at gemme mere komplekse data, som du foreslår i dit spørgsmål. Jeg bruger dem til netop det - til at gemme objekter med flere attributter, der skal cachelagres (specifikt lagerdata for et bestemt produkt på et e-handelssted). Selvfølgelig kunne jeg bruge en sammenkædet streng - men det tilføjer unødvendig kompleksitet til min klientkode, og det er ikke muligt at opdatere et individuelt felt.

Du kan have ret - tutorials kan simpelthen være fra før Hashes blev introduceret. De var tydeligt designet til lagring af objektrepræsentationer:http://oldblog.antirez.com/post/redis-weekly-update-1.html

Jeg formoder, at en bekymring ville være antallet af kommandoer Redis skal betjene, når et nyt element indsættes (n antal kommandoer, hvor n er antallet af felter i Hash) sammenlignet med en simpel String SET-kommando. Jeg har endnu ikke fundet ud af, at dette er et problem på en tjeneste, der rammer Redis omkring 1 million gange om dagen. At bruge den rigtige datastruktur for mig er vigtigere end en ubetydelig præstationspåvirkning.

(Se også min kommentar vedrørende Redis Sets vs. Redis Strings - jeg tror, ​​dit spørgsmål refererer til Strings, men ret mig, hvis jeg tager fejl!)



  1. Mongodb findAndModify node js

  2. spring data mongodb id felt mapping

  3. 3 måder at droppe et indeks i MongoDB

  4. Kan mongo upsert array-data?