river-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "John McClain - Sun Microsystems, Inc." <John.McCl...@Sun.COM>
Subject Re: a potential "AR1" release
Date Fri, 31 Aug 2007 18:42:52 GMT
Mike Morris wrote:
> John McClain - Sun Microsystems, Inc. wrote:
>> The problem with logstore is that it depends on Progress Software's 
>> ObjectStore PSE Pro.
> Thanks for the clarification, John.
>> Because of this I don't see having a dependency on PSE Pro was being 
>> an option for River.
> (I probably should have peeked at the code before commenting.) In my 
> mind was the option of replacing PSE Pro with some other 
> (licence-compatible) OODB (not that I have the cycles, energy or 
> knowledge to try, right now :-)

As it turns out for the way Outrigger uses the store OODBs aren't really 
a good fit. It really just needs a bunch of independent blobs so in lots 
of ways an OODB (and even a RDB) is overkill for Outrigger - so if we 
decided snapstore wasn't enough I would probably go in some other 
direction. For the record the option the options we have considered in 
the past are :

	A JDBC based store : In the past one issue here was being able
	to provide a complete integrated package so it works out of the
	box without having to bring your own RDBMS. Now that Apache
	Derby is around (and its in the JDK!) an embedded Derby could be
	the default, and integration of others could be left to the user

	Keeping all the state in the log files snapstore (and logstore)
	produce, deleting/compacting logs as entries go away. Probably
	the most of work of all the options we have considered, but
	minimizes external dependencies and gives us the most options
	for optimization (not that it would necessarily lead to the
	fastest Outrigger...)

	Berkeley DB Java Edition : seems to be a good fit with what
	Outrigger needs, not sure about licensing, it is available
	under an "OSI-certified" open source license but I don't
	know which license it is and if there are any license
	compatibility issues with Apache.

	A "commit to memory" based scheme where Outrigger commits
	transactions to memory in one or more back end processes running
	on other machines. Has the potential to be very fast, but
	isn't as general as the other options.

I could see ending up with multiple stores to satisfy different sets of 

John McClain					john.mcclain@sun.com
Sun Microsystems, Inc.
Burlington, MA

And it is that way today. We are tricked by hope into starting
companies, beginning books, immigrating to this country and investing
in telecom networks. The challenges turn out to be tougher than we
imagined. Our excessive optimism is exposed. New skills are demanded.
But nothing important was ever begun in a prudential frame of mind.

         - David Brooks

View raw message