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

Redis masseindsættelse

Jeg vil sige, at du er på vej mod for tidlig optimering (som normalt ikke er den bedste).

Ethvert scriptsprog med en Redis-klient, der understøtter pipelining, bør være i stand til at skubbe mindst 50K kommandoer/s til Redis-serveren. Koden vil være ligetil uden behov for manuelt at kode Redis-protokollen. Indrømmet, det massive indstikstrick er hurtigere, men har du virkelig brug for det?

Nu, hvis du stadig vil holde dig til massiv indsættelse, skal du kode en ordentlig Redis-kommando. Det eksempel, du har angivet, er forkert af flere årsager:

  • antallet af argumenter er forkert (dit eksempel skal starte med *3)

  • længden af ​​det sidste argument er forkert (1,2,34 længde er 6 bytes ikke 5).

  • i SADD-kommandoen skal du bruge et argument pr. element i sættet (dvs. for Redis vil 1,2,34 være et enkelt element, ikke tre).

Den rigtige kommando ville hellere være noget som denne:

"*5\r\n$4\r\nSADD\r\n$2\r\n80\r\n$1\r\n1\r\n$1\r\n2\r\n$2\r\n34\r\n"

Redis-protokollen er beskrevet her:http://redis.io/topics/protocol




  1. Go JSON-afkodning er meget langsom. Hvad ville være en bedre måde at gøre det på?

  2. Couchbase benchmark afslører meget langsomme INSERT'er og GET'er (ved hjælp af KeyValue-operationer); langsommere end vedvarende MySQL-data

  3. Placering i mongoose, mongoDB

  4. Introduktion til Apache HBase Snapshots