I've just recently been poking around these NoSQLs investigating their features, so...
Redis has limited data structures - flat un-nested lists and sets, and plain strings. It doesn't have sets exactly - just keys and values. Nothing nested at all, unless you serialize to strings. No indexes, although you can hack up your own. To be honest, Redis isn't that impressive versus what's in Clojure already. It's an in-memory DB (so it's not much different from ref +dosync) and it intermittently spits a snapshot to disk. If you can live with an in-process DB, you could copy (and exceed) its features including snapshot saving in a page of pure Clojure code, and beat it on speed too. Contrast MongoDB: slower because it bothers to save things, but still around twice as fast as MySQL and much faster than CouchDB (cite: the benchmarks page). Arbitrarily nested collections, indexes, atomic updates (in place operations like inc and append, or atomic compare- and-set), JSON syntax, typed data, replication (built in) and sharding (via a broker process). (MongoDB downsides: it grows files in a very greedy way to try and minimize data fragmentation, and it needs a 64bit machine to store more than about 2Gb.) On Dec 30 2009, 11:52 am, Gabi <bugspy...@gmail.com> wrote: > On first look, Redis and Clojure seems to be a perfect match. They > both handle sets and maps efficiently. If one could find an easy way > to store and retrieve Clojure data structures to Redis (even a small > subset- just a list or a set), a distributed clojure app could be very > easy (and effective?) thing to do - The stateless Clojure nodes would > share and operate on the same central data structure which is stored > in Redis). What do you thing ? Is it worth investigating further? -- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en