<?xml version="1.0" encoding="UTF-8"?><!-- generator="wordpress/2.3.3" -->
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	>
<channel>
	<title>Comments on: JavaSpaces and Databases</title>
	<link>http://www.dancres.org/blitzblog/2006/06/12/javaspaces-and-databases/</link>
	<description></description>
	<pubDate>Sat, 05 Jul 2008 08:30:47 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.3.3</generator>
		<item>
		<title>By: Dan Creswell</title>
		<link>http://www.dancres.org/blitzblog/2006/06/12/javaspaces-and-databases/#comment-137</link>
		<dc:creator>Dan Creswell</dc:creator>
		<pubDate>Tue, 13 Jun 2006 08:13:13 +0000</pubDate>
		<guid>http://www.dancres.org/blitzblog/2006/06/12/javaspaces-and-databases/#comment-137</guid>
		<description>Hi Steve,

Cool questions: 

Okay so, I'm aware some people have put a query facility on top of the JavaSpaces API and it does indeed muddy the waters.  I guess their philosophy is to make a JavaSpace a "jack of all trades" which is the opposite of mine hence my original scribblings on the differences. IMHO, many a Java framework attempts to be "jack of all trades" and the result is horrible API's, horrible configuration, horrible complexity in general.

Random thoughts:

LRU policy - you don't have a guarantee that any space implementation actually does have such a policy or even uses caching.

Querying - most RDBMS'en have advanced query optimizers to accelerate performance - JavaSpaces don't really yield to the same approach.  In the case of the vendor I think you're talking about, they've actually built their implementation on top of an SQL database with it's associated advantages and disadvantages.

Do one thing well - I wouldn't use a database as a substitute for a JavaSpace or vice versa, nor would I try and "have it all" in one thing.  Especially in the context of SOA but in decent architecture in general, the "do one thing well" mantra yields better results.  "Have it all" often leads to a compromise which loses you the key benefits of each and messes up your architecture as your system gains features over time.  However, I have actually combined RDBMS and JavaSpaces as discrete components for certain kinds of system.  And of course, I'm not going to say that my way is the only way!

Request for feedback:

I'd be interested to hear why you would like to avoid having both a JavaSpace and an RDBMS - is it architecture, license cost, machine cost or something else?

Non clustered HA solution:

Bits of this are being tested out with various of my customers in different kinds of deployment.  I'm busy figuring out the best way to package it all up and make it available.

I could just supply it as a framework but getting the documentation right etc is difficult.  I'm tempted to express it as a collection of design patterns - whether that'd be in book form or something else, dunno.  I'm also thinking about providing it as part of some Web 2.0 style offering.</description>
		<content:encoded><![CDATA[<p>Hi Steve,</p>
<p>Cool questions: </p>
<p>Okay so, I&#8217;m aware some people have put a query facility on top of the JavaSpaces API and it does indeed muddy the waters.  I guess their philosophy is to make a JavaSpace a &#8220;jack of all trades&#8221; which is the opposite of mine hence my original scribblings on the differences. IMHO, many a Java framework attempts to be &#8220;jack of all trades&#8221; and the result is horrible API&#8217;s, horrible configuration, horrible complexity in general.</p>
<p>Random thoughts:</p>
<p>LRU policy - you don&#8217;t have a guarantee that any space implementation actually does have such a policy or even uses caching.</p>
<p>Querying - most RDBMS&#8217;en have advanced query optimizers to accelerate performance - JavaSpaces don&#8217;t really yield to the same approach.  In the case of the vendor I think you&#8217;re talking about, they&#8217;ve actually built their implementation on top of an SQL database with it&#8217;s associated advantages and disadvantages.</p>
<p>Do one thing well - I wouldn&#8217;t use a database as a substitute for a JavaSpace or vice versa, nor would I try and &#8220;have it all&#8221; in one thing.  Especially in the context of SOA but in decent architecture in general, the &#8220;do one thing well&#8221; mantra yields better results.  &#8220;Have it all&#8221; often leads to a compromise which loses you the key benefits of each and messes up your architecture as your system gains features over time.  However, I have actually combined RDBMS and JavaSpaces as discrete components for certain kinds of system.  And of course, I&#8217;m not going to say that my way is the only way!</p>
<p>Request for feedback:</p>
<p>I&#8217;d be interested to hear why you would like to avoid having both a JavaSpace and an RDBMS - is it architecture, license cost, machine cost or something else?</p>
<p>Non clustered HA solution:</p>
<p>Bits of this are being tested out with various of my customers in different kinds of deployment.  I&#8217;m busy figuring out the best way to package it all up and make it available.</p>
<p>I could just supply it as a framework but getting the documentation right etc is difficult.  I&#8217;m tempted to express it as a collection of design patterns - whether that&#8217;d be in book form or something else, dunno.  I&#8217;m also thinking about providing it as part of some Web 2.0 style offering.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: an interested party</title>
		<link>http://www.dancres.org/blitzblog/2006/06/12/javaspaces-and-databases/#comment-136</link>
		<dc:creator>an interested party</dc:creator>
		<pubDate>Tue, 13 Jun 2006 00:22:48 +0000</pubDate>
		<guid>http://www.dancres.org/blitzblog/2006/06/12/javaspaces-and-databases/#comment-136</guid>
		<description>At least one vendor has built a query facility, via vendor specific extensions, on top of the JavaSpaces API.

This muddies the purity of the statement that JavaSpaces is "snapshot of a set of conversations between multiple senders and recipients" because one could use the "space" as a database, relying on the persistent space with LRU eviction policy to keep the "working set" reasonable.

I have been tempted to "abuse" spaces in just that way so that both an RDBMS and a space are not needed. What do you think?

Also, I hope you will reveal more about your non-clustered HA solution!

thanks again,</description>
		<content:encoded><![CDATA[<p>At least one vendor has built a query facility, via vendor specific extensions, on top of the JavaSpaces API.</p>
<p>This muddies the purity of the statement that JavaSpaces is &#8220;snapshot of a set of conversations between multiple senders and recipients&#8221; because one could use the &#8220;space&#8221; as a database, relying on the persistent space with LRU eviction policy to keep the &#8220;working set&#8221; reasonable.</p>
<p>I have been tempted to &#8220;abuse&#8221; spaces in just that way so that both an RDBMS and a space are not needed. What do you think?</p>
<p>Also, I hope you will reveal more about your non-clustered HA solution!</p>
<p>thanks again,</p>
]]></content:encoded>
	</item>
</channel>
</rss>
