[elephant-devel] Quick hack for lisp backend.

Glenn Tarcea gtarcea at umich.edu
Thu May 15 22:50:00 UTC 2008


I had never looked at Rucksack before. The code is very well  
structured indeed!

A couple of thoughts:

1. Could the Rucksack B-Tree code be separated out, abstracted a  
little and put in a separate project (eg, a cl-btree, or ldb for  
example)? This would allow other lisp projects that are also looking  
for a native B-Tree backend to make use of it. And all those projects  
would benefit from the work done.

2. It appears that Rucksack is still be developed. Could the author 
(s) be contacted and see if they are interested in creating a  
universal lisp backend that could be shared between Elephant and  
Rucksack (more rows in the water so to speak)?

3. I think that if the Rucksack B-Tree can be used in some way its  
the fastest way to get the project off the ground and get some  
momentum behind it.

Glenn


On May 14, 2008, at 12:41 PM, Ian Eslick wrote:

> I just spent some time, with the context of this discussion, review  
> the very excellent rucksack code base.  I think that most of the  
> facilities needed by our datastore are quite congruent with what  
> Arthur did to implement his system.
>
> If we really want to get going fast, we should start by building a  
> datastore out of the rucksack btree - but not necessarily buy into  
> his full object model (although he has schemas, a similar MOP  
> implementation, indexing, etc).
>
> The system has an all-lisp serializer, an object cache, a  
> persistent heap, etc that should all work pretty well with the  
> Elephant MOP and object model.  You might even be able to use the  
> transaction subsystem - it is based on a similar versioning scheme  
> to the one I provided, but I don't know enough about it to know for  
> sure how congruent it is.
>
> The extensions we'd need to make to this, at least, are multi- 
> process support and perhaps changes to the versioning model to  
> handle the slot-level persistence notion in elephant?
>
> Let me know if you look into this, I'd be happy to review the code  
> and make some suggestions for what can be reused from that code  
> base and how it would play into the rest of the elephant system.
>
> Ian
> _______________________________________________
> elephant-devel site list
> elephant-devel at common-lisp.net
> http://common-lisp.net/mailman/listinfo/elephant-devel
>
>




More information about the elephant-devel mailing list