top | item 7626700

Redis 2.8.9 is out

125 points| ClifReeder | 12 years ago |groups.google.com

25 comments

order
[+] compare|12 years ago|reply
I'm about to deploy a new autocomplete on my site, probably with 10s to 100s of millions of records, at least 100 users at once. Would the new Redis commands help here? How would the memory usage be? Is it better to just use something else like Cleo for autocomplete?
[+] antirez|12 years ago|reply
Can't reply on the comparison with other products since I myself have still to compare and build an experience about this, but as far as how Redis performs, there is a demo here: http://autocomplete.redis.io. Basically for 8 million records it takes 1GB of memory (32 bit system), however here the records are source code lines so the average length is bigger than the usual search-term length. Definitely no problems in the ~10 millions range even with just a few GBs of memory. For +100 millions you need to either split the range across servers or use a machine with some non-trivial amount of memory, like 16-32 GB or alike.
[+] dvirsky|12 years ago|reply
Keep in mind that the current redis implemention doesn't include scores for auto completion, and assumes all the entries in a sorted set have the same score to be able to do autocomplete style search. How to sort is up to you but it might create big overhead in CPU and memory.
[+] Gigablah|12 years ago|reply
Looking at search.php, you could use the native json_encode() function available from PHP 5.2 onwards. (I know, it's just a demo)
[+] antirez|12 years ago|reply
Thanks, I'll do this.
[+] weakwire|12 years ago|reply
HLL eliminates read before writes in many cases and that's great.Would love to see the same data structure in cassandra and PG.
[+] antirez|12 years ago|reply
In eventually consistent systems like Cassandra, HLLs have the ideal merge semantics too (very similar to union of a Set).
[+] ddorian43|12 years ago|reply
if by pg you mean postgresql it is available as an extension
[+] aktau|12 years ago|reply
I have a vague notion of what you mean but could you annotate that with an example or something, please? I'd like to make sure :).
[+] danford|12 years ago|reply
I'm currently learning the MEAN stack (and just started learning web development a few months ago) and I'm using mongoDB/mongoose as a post storage database. The project I'm working on is basically a 4chan-like image board with tags. I'm not expecting it to go public, but if it did it shouldn't have more than maybe 20,000 posts at a time.

I want to do something like stack overflow does where they have a pop-up come up when users start typing tag names. Does anyone know if redis would be suitable for this or have a suggestion for something even better? Keep in mind I'm trying to stay away from really advanced databases and would prefer a noSQL solution.

[+] opendais|12 years ago|reply
If you want to do something more complex than the Redis option, you may want to look into Elastic Search. Especially if you allow text submissions and want to provide the ability to search them...
[+] armis|12 years ago|reply
Redis still keeps on amazing me. Can't wait to try those new handy sorted set functions
[+] mrmondo|12 years ago|reply
Well done! I'm really looking forward to the further development of cluster and sentinels - IMO at the moment Redis' clustering (or lack there of) isn't ready for production use so that'll be great.
[+] nobbyclark|12 years ago|reply
2.8.9? That sounds way too mature. What pre-alpha data store does HN recommend replacing redis with?