On Monday, July 4, 2011 10:51:38 PM UTC-6, Ian Eslick wrote: > > For the past 5 years or so I've been the lead developer on Elephant and > the BDB backend. I have been and will be inactive for some time yet. I > may make some updates when I do a bug / upgrade pass on the two legacy > commercial websites I have that are running on weblocks + Elephant. > > The BDB backend hasn't been updated to the latest release, nor well-tested > in probably 1.5 years. However, with a few quick tweaks, it shouldn't be > hard to keep it current and fix any simple problems (e.g. the one mentioned > for Mac 10.5). The downside of BDB generally is multiple-machine > scalability as we don't currently have anything in place that would build > on BDB's replication infrastructure to scale out. That's a fairly hairy > project and the right person hasn't come along to pull it off yet. > > To deal with scaling, some smart folks wrote the Elephant-postmodern > backend that simulates the primitive BTrees on which the elephant object > API is based so it's a bit slower than BDB depending on use case. Because > it is based on postmodern / postgres, you can use postgres replication to > scale the Elephant API over more machines which should be enough for most > applications. Direct use of the postmodern API is of course also an option > and will have somewhat better performance characteristics. > > cl-prevalence is really nice and highly performant, but I don't like the > fact that I have to encode the transaction information by hand - Elephant > makes persistence really easy. > > Oh yes, associations are still a beta feature and along with sets, > set-valued slots and cached slots have not been fully vetted yet. That's > one of the big reasons we've been in a perpetual holding pattern waiting > for a 1.0 release. Anyone who wants to write some tests for these features > might motivate me or others to invest a day or two to fix bugs. I know one > or two other people have expressed interest in ironing down the last few > issues and issuing a 1.0 release of Elephant. > > I probably won't invest any more development time in Elephant beyond 1.0. > For awhile I'd envisioned a pure lisp backend but I don't have the flex > time for a project of that magnitude anymore. Moreover, with the > proliferation of NoSQL technologies since Elephant was first developed, I'd > be tempted to migrate to something like CouchBase, Mongo or another > document DB solution that scales horizontally (usually by ignoring > database-level, cross-object transactions) and has a simple API. > > Both of these databases are fast, scalable and would be easy to implement > underneath an Elephant-like persistent-object API. They would work well > behind the weblocks API also. Mongo, with explicitly managed indices, > could probably support a huge chunk of the Elephant API. Associations and > similar referential integrity problems might be tricky though. > > What about rucksack?
-- You received this message because you are subscribed to the Google Groups "weblocks" group. To view this discussion on the web visit https://groups.google.com/d/msg/weblocks/-/eGEa0q4bE6UJ. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/weblocks?hl=en.
