Something else to look at might be the Apache Jackrabbit project at
http://jackrabbit.apache.org/.

I've been looking at tools along these lines as well, and recently
looked at Redis for the same reasons.  Right now, though, I'm focusing
my attention on Jackrabbit which is an implementation of the JSR170
repository specifications.  It supports hierarchical data and lists.
I was looking for some way to save dynamic objects (basically runtime
defined maps) and this looks like it might work.

JSR170  defines a repository as:

"A content repository consists of one or more workspaces, each of
which contains a tree of items. An item is either a node or a
property. Each node may have zero or more child nodes and zero or more
child properties. There is a single root node per workspace, which has
no parent. All other nodes have one parent. Properties have one parent
(a node) and cannot have children; they are the leaves of the tree.
All of the actual content in the repository is stored within the
values of the properties."

The available property types cover what appear to be all the bases,
including references to other nodes to prevent cycles when
serializing. It can support annotated Java objects or use the Node
building capability directly and allows querying similar to XPath.
Since it is a Java project, using it from Clojure should be trivial to
use.


On Dec 31, 5:29 am, Steve Purcell <st...@sanityinc.com> wrote:
> Not sure if it's any help, but here's a variant of memoize I wrote, which 
> stores arbitrary readable/printable objects to redis:
>
> http://gist.github.com/266689
>
> (If there's any interest, I'll wrap it up in a github project and push it to 
> clojars.)
>
> Redis isn't a hierarchical store, so its array/set operations would only 
> benefit the most shallow of data structures.
>
> -Steve
>
> On 30 Dec 2009, at 11:52, Gabi 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

-- 
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

Reply via email to