redis: All content tagged as redis in NoSQL databases and polyglot persistence
Thursday, 2 February 2012
NoSQL Market from Couchbase Perspective
James Philips (Couchbase) for Curt Monash:
- MongoDB is the big competition. He believes Couchbase has an excellent win rate vs. 10gen for actual paying accounts.
- DataStax/Cassandra wins over Couchbase only when multi-data-center capability is important. Naturally, multi-data-center capability is planned for Couchbase. (Indeed, that’s one of the benefits of swapping in CouchDB at the back end.)
- Redis has “dropped off the radar”, presumably because there’s no particular persistence strategy for it.
- Riak doesn’t show up much.
I assume this is sort of a pre-sales/sales department 100k feet overview.
Original title and link: NoSQL Market from Couchbase Perspective (©myNoSQL)
Wednesday, 18 January 2012
The Little Known Secret of Redis
It’s the redis-benchmark. In Salvatore’s words:
a little known feature of redis-benchmark introduced recently by Pieter Noordhuis is that you can benchmark any command you want (only available in Redis unstable branch, but you can use redis-benchmark from unstable to benchmark Redis 2.4.x):
$ ./redis-benchmark -q -n 100000 zadd sortedset 10 a zadd sortedset 10 a: 152439.02 requests per secondTo compare it with another command:
$ ./redis-benchmark -q -n 100000 set foo bar set foo bar: 153374.23 requests per secondHowever you can say that we are setting again and again the same element. True… but there is an hidden feature of redis-benchmark that allows to randomize arguments:
$ ./redis-benchmark -q -r 100000 -n 100000 zadd sortedset 10 ele:rand:000000000000 zadd sortedset 10 ele:rand:000000000000: 104166.67 requests per second $ redis-cli zcard sortedset (integer) 63202
The same thread also covers the performance of sorted sets in Redis.
Original title and link: The Little Known Secret of Redis (©myNoSQL)
Tuesday, 17 January 2012
Redis: The Tool I Never Forget When Managing User Presence, Software Caches, Counters, Sessions
Vishal Shah:
As a software architect, the hardest thing to do is pick the right tool for the job while balancing complexity, cost, performance and learning. And if there is one tool I never forget and keep on getting back to is redis which is an intentionally kept simple but superb artifact of the KISS principle.
Original title and link: Redis: The Tool I Never Forget When Managing User Presence, Software Caches, Counters, Sessions (©myNoSQL)
via: http://blog.vishalshah.org/post/15977991304/managing-software-sessions-using-redis
Monday, 16 January 2012
Redis: Adding a 128-Bit K-Ordered Unique Id Generator
Interesting pull request submitted to Redis by Pierre-Yves Ritschard:
This is similar to what snowflake and the recent boundary solution do, but it makes sense to use redis for that type of use cases for people wanting a simple way to get incremental ids in distributed systems without an additional daemon requirement.
Snoflake is the network service for generating unique ID numbers at high scale used (and open sourced) by Twitter. Flake is an Erlang decentralized, k-ordered id generation service open sourced by Boundary.
Original title and link: Redis: Adding a 128-Bit K-Ordered Unique Id Generator (©myNoSQL)
Redmon - a Web Interface for Managing Redis: Cli, Admin, and Live Monitoring
Just a few days after posting about Reddish: a hosted visual admin and data analysis tool for Redis, here is another project that tries to provide the same range of functionality, but is self-hosted.
Redmon, a Sinatra based project, is still in the early stages. In the past, I’ve seen many attempts to provide a web-based administration tool for Redis. Unfortunately most of these projects, except maybe Webdis, didn’t stick around long enough to see adoption and, why not, become a de facto tool to be used with Redis.
Original title and link: Redmon - a Web Interface for Managing Redis: Cli, Admin, and Live Monitoring (©myNoSQL)
Thursday, 12 January 2012
Redis 2.6 ETA: Quality or Death
There are quite a few interesting features scheduled for Redis 2.6—Lua scripting, high resolution expires, just to name a couple—which makes some people anxious to start using it.
When asked what is the ETA for Redis 2.6, Salvatore replied:
So long story short, RC1 is going to take a few weeks.
[…]
To put it raw: after 2.6 RC1 is released I’ll just write tests to reach full coverage of the source code. When this effort is completed, 2.6 will be called stable, and we’ll finally move to Redis 3.0 to finish the cluster implementation.
Quality, or Death :)
Original title and link: Redis 2.6 ETA: Quality or Death (©myNoSQL)
Thursday, 5 January 2012
Reddish: A Visual Admin and Data Analysis Tool for Redis
The initial feature set of reddish, a quite stylish[1] new Redis admin tool, created by Jim and Danielle from FreeFlow Labs:
- Support for redis data structures
- Pretty JSON formatting
- Built on node.js
- GUI commands labeled with their CLI counterpart
- Command-line replacement with inline helpers
- Real time updates. Who wants to keep refreshing the page or hitting a button/keystroke just to see changes?
There’s one thing I don’t understand though: reddish hosted model. Hosted monitoring services are OK. But a hosted admin tool doesn’t sound right.
-
Based on the 3 screenshots shared in the post. I’d really appreciate an invite though. ↩
Original title and link: Reddish: A Visual Admin and Data Analysis Tool for Redis (©myNoSQL)
Tuesday, 3 January 2012
Nmap Scripts for Riak, Redis, Memcached
If you take a look at the topic of security in the NoSQL context, you’ll notice that things are far from being perfect. So, any contributions in this area are welcome. Patrik Karlsoon added a couple of network exploration Nmap scripts for Riak, Redis, and Memcached. And while these will not help much with security they might proove useful for managing your NoSQL deployments:
-
Added the script riak-http-info that lists version and statistics information from the Basho Riak distributed database.
-
Added the script memcached-info that lists version and statistics information from the distributed memory object caching service memcached
-
Added the script redis-info that lists version and statistic information gathered from the Redis network key-value store.
-
Added the redis library and the script redis-brute that performs brute force password guessing against the Redis network key-value store.
Original title and link: Nmap Scripts for Riak, Redis, Memcached (©myNoSQL)
Last NoSQL Releases in 2011: MongoDB, Hive, ZooKeeper, Whirr, HBase, Redis, and Hadoop 1.0.0
Let’s start the year with a quick review of the latest releases that happened in December. Make sure that you scroll to the end as there are quite a few important ones.
MongoDB 2.0.2
Announced on Dec.15th, MongoDB 2.0.2 is a bug fix release:
- Hit config server only once per mongos on meta data change to not overwhelm
- Removed unnecessary connection close and open between mongos and mongod after getLastError
- Replica set primaries close all sockets on stepDown()
- Do not require authentication for the buildInfo command
- scons option for using system libraries
Apache Hive 0.8.0
Apache Hive 0.8.0 came out on Dec.19th. The list of new features, improvements, and bug fixes is extremely long.
Just as a side note, who came out with the idea of having a Hive fans’ page on Facebook?
Apache ZooKeeper 3.4.2
ZooKeeper 3.4.0 has been followed up shortly by two new minor version updates fixing some critical bugs. The list of issues fixed in ZooKeeper 3.4.1 can be found here and for ZooKeeper 3.4.2 the 2 fixed bugs are listed here.
As with ZooKeeper 3.4.0, these versions are not yet production ready.
Apache Whirr 0.7.0
Apache Whirr 0.7.0 has been released on Dec.21st featuring 56 improvements and bug fixes including support for Puppet & Chef, and Mahout and Ganglia as a service. The complete list can be found here.
Some more details about Whirr 0.7.0 can be found here.
Apache HBase 0.90.5
Released Dec.23rd, HBase 0.90.5 packs 81 bug fixes. The complete list can be found here.
Redis 2.4.5
Redis 2.4.5 was released on Dec.23rd and provides 4 bug fixes:
- [BUGFIX] Fixed a ZUNIONSTORE/ZINTERSTORE bug that can cause a NaN to be inserted as a sorted set element score. This happens when one of the elements has
+inf/-infscore and the weight used is 0. - [BUGFIX] Fixed memory leak in
CLIENT INFO. - [BUGFIX] Fixed a non critical
SORTbug (Issue 224). - [BUGFIX] Fixed a replication bug: now the timeout configuration is respected during the connection with the master.
--quietoption implemented in the Redis test.
Last but definitely one of the most important announcements that came in December:
Hadoop 1.0.0
Based on the 0.20-security code line, Hadoop 1.0.0 was announced on Dec.29. This release includes support for:
- HBase (append/hsynch/hflush) and Security
- Webhdfs (with full support for security)
- Performance enhanced access to local files for HBase
- Other performance enhancements, bug fixes, and features
- All version 0.20.205 and prior 0.20.2xx features
Complete release notes are available here.
Stéphane Fréchette, Ryan Slobojan, Duane Moore, Arun C. Murthy
And with this we are ready for 2012.
Original title and link: Last NoSQL Releases in 2011: MongoDB, Hive, ZooKeeper, Whirr, HBase, Redis, and Hadoop 1.0.0 (©myNoSQL)
Tuesday, 20 December 2011
Grails 2.0 and NoSQL
Graeme Rocher:
Grails 2.0 is the first release of Grails that truly abstracts the GORM layer so that new implementations of GORM can be used. […] The MongoDB plugin is at final release candidate stage and is based on the excellent Spring Data MongoDB project which is also available in RC form. […] Grails users can look forward to more exciting NoSQL announcements in 2012 with upcoming future releases of GORM for Neo4j, Amazon SimpleDB and Cassandra in the works.
This is great news.
The very very big news would be a Grails version that doesn’t default anymore to using Hibernate for accessing a relational database.
Original title and link: Grails 2.0 and NoSQL (©myNoSQL)
via: http://blog.springsource.org/2011/12/15/grails-2-0-released/
Redis: Optimizing for Roundtrips
Nifty one from Trenton Strong:
Using
SORTandGETis fairly straightforward. We can point theSORTcommand at lists and sorted sets and retrieve the contents in specified order. If we use theGETclause, we can specify a pattern for keys external to the list that we would like to retrieve instead of the sorted list contents. So now we can finally dereference our references!redis> SORT FooBar|list BY nonexistentkey GET FooBar|id|*
Before knowing this one, I’d be looking for:
- variadic commands (
SADD,ZADD,LPUSH,RPUSH,HMSET) available since Redis 2.4 - Pipelining
- MULTI/EXEC: available since Redis 1.1.95
- the upcoming Lua support
Original title and link: Redis: Optimizing for Roundtrips (©myNoSQL)
via: http://trentstrong.com/blog/2011/using-redis-sort-get-save-roundtrips.html
Wednesday, 14 December 2011
Redis Bitmaps for Real-Time Metrics at Spool
Chandra Patni:
Traditionally, metrics are performed by a batch job (running hourly, daily, etc.). Redis backed bitmaps allow us to perform such calculations in realtime and are extremely space efficient. In a simulation of 128 million users, a typical metric such as “daily unique users” takes less than 50 ms on a MacBook Pro and only takes 16 MB of memory. Spool doesn’t have 128 million users yet but it’s nice to know our approach will scale. We thought we’d share how we do it, in case other startups find our approach useful.
A very different approach to the classical approach of historical event logging.
Original title and link: Redis Bitmaps for Real-Time Metrics at Spool (©myNoSQL)
via: http://blog.getspool.com/2011/11/29/fast-easy-realtime-metrics-using-redis-bitmaps/
Most Popular Articles
- Translate SQL to MongoDB MapReduce
- Tutorial: Getting Started With Cassandra
- CouchDB vs MongoDB: An attempt for a More Informed Comparison
- Cassandra @ Twitter: An Interview with Ryan King
- A Couple of Nice GUI Tools for MongoDB
- NoSQL benchmarks and performance evaluations
- Ehcache: Distributed Cache or NoSQL Store?
- Document Databases Compared: CouchDB, MongoDB, RavenDB
- Quick Review of Existing Graph Databases
- NoSQL Data Modeling