<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: The Technology and Business of ObjectStore</title>
	<atom:link href="http://danweinreb.org/blog/the-technology-and-business-of-objectstore/feed" rel="self" type="application/rss+xml" />
	<link>http://danweinreb.org/blog/the-technology-and-business-of-objectstore</link>
	<description>Software and Innovation</description>
	<lastBuildDate>Fri, 26 Feb 2010 22:22:17 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.1</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Chris Kaminski</title>
		<link>http://danweinreb.org/blog/the-technology-and-business-of-objectstore/comment-page-1#comment-11620</link>
		<dc:creator>Chris Kaminski</dc:creator>
		<pubDate>Tue, 17 Feb 2009 23:04:11 +0000</pubDate>
		<guid isPermaLink="false">http://dlweinreb.wordpress.com/2007/12/31/the-technology-and-business-of-objectstore/#comment-11620</guid>
		<description>As an old ODI-er myself, I think the biggest issue I ever had, particularly from a support perspective, was the lack of tools.  Even in 1999, the SQL world was awash in analysis and debugging tools, hell, even Excel could be used by a saavy user to mine data out of a relational database.  ObjectStore didn&#039;t have this - you had to be part of the backoffice/development clique to get information.   It couldn&#039;t compete in places where RDBMSs ruled (and continue to).  

It&#039;s part of why OpenEdge isn&#039;t a database of choice, even though it&#039;s a great database - tools support was horrid (and I think part of the motivation for the purchase of DataDirect) - better ODBC support.</description>
		<content:encoded><![CDATA[<p>As an old ODI-er myself, I think the biggest issue I ever had, particularly from a support perspective, was the lack of tools.  Even in 1999, the SQL world was awash in analysis and debugging tools, hell, even Excel could be used by a saavy user to mine data out of a relational database.  ObjectStore didn&#8217;t have this &#8211; you had to be part of the backoffice/development clique to get information.   It couldn&#8217;t compete in places where RDBMSs ruled (and continue to).  </p>
<p>It&#8217;s part of why OpenEdge isn&#8217;t a database of choice, even though it&#8217;s a great database &#8211; tools support was horrid (and I think part of the motivation for the purchase of DataDirect) &#8211; better ODBC support.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Bill Dettelback</title>
		<link>http://danweinreb.org/blog/the-technology-and-business-of-objectstore/comment-page-1#comment-799</link>
		<dc:creator>Bill Dettelback</dc:creator>
		<pubDate>Fri, 26 Sep 2008 15:32:35 +0000</pubDate>
		<guid isPermaLink="false">http://dlweinreb.wordpress.com/2007/12/31/the-technology-and-business-of-objectstore/#comment-799</guid>
		<description>Dan,

I just found your post- it was great to re-live some of my time as a presales engineer at ODI in the late 90&#039;s.  I fondly recall spending hours selling ObjectStore to customers in Financial Services and pitching our distributed cache architecture.  You are right that to call ObjectStore a database was a strategic misstep for sales- reporting and data sharing were two of the biggest objections we would get.

It is great to see ObjectStore is alive and kicking- it remains one of my favorite all time products to have worked with.

Thanks,

Bill</description>
		<content:encoded><![CDATA[<p>Dan,</p>
<p>I just found your post- it was great to re-live some of my time as a presales engineer at ODI in the late 90&#8217;s.  I fondly recall spending hours selling ObjectStore to customers in Financial Services and pitching our distributed cache architecture.  You are right that to call ObjectStore a database was a strategic misstep for sales- reporting and data sharing were two of the biggest objections we would get.</p>
<p>It is great to see ObjectStore is alive and kicking- it remains one of my favorite all time products to have worked with.</p>
<p>Thanks,</p>
<p>Bill</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Carlo Falciola</title>
		<link>http://danweinreb.org/blog/the-technology-and-business-of-objectstore/comment-page-1#comment-325</link>
		<dc:creator>Carlo Falciola</dc:creator>
		<pubDate>Tue, 20 May 2008 14:03:52 +0000</pubDate>
		<guid isPermaLink="false">http://dlweinreb.wordpress.com/2007/12/31/the-technology-and-business-of-objectstore/#comment-325</guid>
		<description>Wonderful!
You make me to re-live several years of my (professional) life as I was a presale&amp;consultant&amp;techsupport for an ODI/Excelon long time  European distributor. I can&#039;t agree more on all your tech observation regarding the product and the technologies evolution implication on Ostore. Most of them I experienced on my own....
Many thanks
Carlo</description>
		<content:encoded><![CDATA[<p>Wonderful!<br />
You make me to re-live several years of my (professional) life as I was a presale&amp;consultant&amp;techsupport for an ODI/Excelon long time  European distributor. I can&#8217;t agree more on all your tech observation regarding the product and the technologies evolution implication on Ostore. Most of them I experienced on my own&#8230;.<br />
Many thanks<br />
Carlo</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Kragen Sitaker</title>
		<link>http://danweinreb.org/blog/the-technology-and-business-of-objectstore/comment-page-1#comment-324</link>
		<dc:creator>Kragen Sitaker</dc:creator>
		<pubDate>Tue, 01 Apr 2008 07:00:57 +0000</pubDate>
		<guid isPermaLink="false">http://dlweinreb.wordpress.com/2007/12/31/the-technology-and-business-of-objectstore/#comment-324</guid>
		<description>&lt;blockquote&gt;
They had not anticipated our architecture, which mapped a huge number of pages independently. So they were using a simple linear search. Guy Hillyer wrote an improvement to Solaris, using skip lists to make the search run in O(log n) time. The hard part was the politics getting Sun to accept our changes to Solaris! We only did this for Solaris, which was then our primary platform. (Maybe it should be done for Linux?)
&lt;/blockquote&gt;

I suspect that the level of performance degradation you&#039;re talking about doesn&#039;t exist in modern Linux, because things like Electric Fence have to run at least somewhat efficiently.  There have occasionally been changes to Linux that make Electric Fence run unusably slowly, but they tend to be short-lived.

As an example, using vim, if I LD_PRELOAD=libefence.so.0.0 vi /usr/share/doc/electric-fence/README.Debian, which is a tiny file, the resulting vi process takes a few seconds to start up and is a little slow (on my 700MHz laptop from the previous millennium), and cat /proc/27158/maps &#124; wc shows that it has 25070 regions mapped.  (As compared to 186 regions normally.)

I&#039;m not 100% clear on whether the problem Scott Burson is running into is the same problem ODI ran into; from the kernel Bugzilla bug, it sounds like Linux perhaps deals better with many mmapped regions than with a single mmapped region with pages in many different protection states.</description>
		<content:encoded><![CDATA[<blockquote><p>
They had not anticipated our architecture, which mapped a huge number of pages independently. So they were using a simple linear search. Guy Hillyer wrote an improvement to Solaris, using skip lists to make the search run in O(log n) time. The hard part was the politics getting Sun to accept our changes to Solaris! We only did this for Solaris, which was then our primary platform. (Maybe it should be done for Linux?)
</p></blockquote>
<p>I suspect that the level of performance degradation you&#8217;re talking about doesn&#8217;t exist in modern Linux, because things like Electric Fence have to run at least somewhat efficiently.  There have occasionally been changes to Linux that make Electric Fence run unusably slowly, but they tend to be short-lived.</p>
<p>As an example, using vim, if I LD_PRELOAD=libefence.so.0.0 vi /usr/share/doc/electric-fence/README.Debian, which is a tiny file, the resulting vi process takes a few seconds to start up and is a little slow (on my 700MHz laptop from the previous millennium), and cat /proc/27158/maps | wc shows that it has 25070 regions mapped.  (As compared to 186 regions normally.)</p>
<p>I&#8217;m not 100% clear on whether the problem Scott Burson is running into is the same problem ODI ran into; from the kernel Bugzilla bug, it sounds like Linux perhaps deals better with many mmapped regions than with a single mmapped region with pages in many different protection states.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jim Zeigler</title>
		<link>http://danweinreb.org/blog/the-technology-and-business-of-objectstore/comment-page-1#comment-323</link>
		<dc:creator>Jim Zeigler</dc:creator>
		<pubDate>Tue, 01 Apr 2008 00:13:40 +0000</pubDate>
		<guid isPermaLink="false">http://dlweinreb.wordpress.com/2007/12/31/the-technology-and-business-of-objectstore/#comment-323</guid>
		<description>Very interesting reading about the history, especially since my company was one of the early adopters of ObjectStore technology. ObjectStore was by far the best performing C++ database on the market (when compared to Objectivity, Versant) and had big advantages for CAD applications.  It blew the others away in my head to head benchmarks.

Even though ObjectStore perfomed as advertized, our project failed because 1) the largest servers at the time had relatively small memory footprints and slow 33Mhz processors which led to to slow performance too much paging 2) we added too many fancy features to exploit multiple inheritance and incremental processing in our object model 3) The paying project (an IBM mainframe based on VLSI bipolar chips to replace the 3090) was killed.

The level of design integration we accomplished by using ObjectStore could not be achieved with any other database technology and has not been matched by any CAD vendor.

The Object Design engineers were all top notch people that you could depend on to solve any problem that came up.

I&#039;ve been working exclusively in Java for the last 10 years and wish that Object Design had implemented a native Java Server with the same characteristics as the C++ server. The world needs a robust high performance Java object sharing technology. It&#039;s a shame that the world still has to use SQL and RDBs to store java objects.</description>
		<content:encoded><![CDATA[<p>Very interesting reading about the history, especially since my company was one of the early adopters of ObjectStore technology. ObjectStore was by far the best performing C++ database on the market (when compared to Objectivity, Versant) and had big advantages for CAD applications.  It blew the others away in my head to head benchmarks.</p>
<p>Even though ObjectStore perfomed as advertized, our project failed because 1) the largest servers at the time had relatively small memory footprints and slow 33Mhz processors which led to to slow performance too much paging 2) we added too many fancy features to exploit multiple inheritance and incremental processing in our object model 3) The paying project (an IBM mainframe based on VLSI bipolar chips to replace the 3090) was killed.</p>
<p>The level of design integration we accomplished by using ObjectStore could not be achieved with any other database technology and has not been matched by any CAD vendor.</p>
<p>The Object Design engineers were all top notch people that you could depend on to solve any problem that came up.</p>
<p>I&#8217;ve been working exclusively in Java for the last 10 years and wish that Object Design had implemented a native Java Server with the same characteristics as the C++ server. The world needs a robust high performance Java object sharing technology. It&#8217;s a shame that the world still has to use SQL and RDBs to store java objects.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Need fine-grained concurrency primitives &#171; Handwaving</title>
		<link>http://danweinreb.org/blog/the-technology-and-business-of-objectstore/comment-page-1#comment-322</link>
		<dc:creator>Need fine-grained concurrency primitives &#171; Handwaving</dc:creator>
		<pubDate>Tue, 19 Feb 2008 17:15:23 +0000</pubDate>
		<guid isPermaLink="false">http://dlweinreb.wordpress.com/2007/12/31/the-technology-and-business-of-objectstore/#comment-322</guid>
		<description>[...] fine-grained concurrency&#160;primitives  Buried in this very long post about ObjectStore is a quote from Dave Moon: Looking into the future, Dave Moon says: “The [...]</description>
		<content:encoded><![CDATA[<p>[...] fine-grained concurrency&nbsp;primitives  Buried in this very long post about ObjectStore is a quote from Dave Moon: Looking into the future, Dave Moon says: “The [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Scott L. Burson</title>
		<link>http://danweinreb.org/blog/the-technology-and-business-of-objectstore/comment-page-1#comment-321</link>
		<dc:creator>Scott L. Burson</dc:creator>
		<pubDate>Fri, 11 Jan 2008 17:45:56 +0000</pubDate>
		<guid isPermaLink="false">http://dlweinreb.wordpress.com/2007/12/31/the-technology-and-business-of-objectstore/#comment-321</guid>
		<description>Hi Dan,

A very interesting story indeed.  I used to work at a CASE company that was an ODI customer, but our C++ experiment lasted only a few years before we came to our senses and went back to Lisp :), so we never really did that much with ObjectStore.  And in more recent years I had wondered what had become of it.  So it&#039;s nice to hear that it&#039;s still out there.

Oh, about your parenthetical question asking whether Linux has the same problem with kernel memory region table fragmentation that Solaris once had, the answer is yes.  See: http://bugzilla.kernel.org/show_bug.cgi?id=5493  As you&#039;ll see at the bottom of that page, I have switched to Solaris to get around that problem.  Amusing to know that it was ODI that made that work in Solaris to begin with.</description>
		<content:encoded><![CDATA[<p>Hi Dan,</p>
<p>A very interesting story indeed.  I used to work at a CASE company that was an ODI customer, but our C++ experiment lasted only a few years before we came to our senses and went back to Lisp <img src='http://danweinreb.org/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> , so we never really did that much with ObjectStore.  And in more recent years I had wondered what had become of it.  So it&#8217;s nice to hear that it&#8217;s still out there.</p>
<p>Oh, about your parenthetical question asking whether Linux has the same problem with kernel memory region table fragmentation that Solaris once had, the answer is yes.  See: <a href="http://bugzilla.kernel.org/show_bug.cgi?id=5493" rel="nofollow">http://bugzilla.kernel.org/show_bug.cgi?id=5493</a>  As you&#8217;ll see at the bottom of that page, I have switched to Solaris to get around that problem.  Amusing to know that it was ODI that made that work in Solaris to begin with.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: John Storey</title>
		<link>http://danweinreb.org/blog/the-technology-and-business-of-objectstore/comment-page-1#comment-320</link>
		<dc:creator>John Storey</dc:creator>
		<pubDate>Thu, 03 Jan 2008 05:09:00 +0000</pubDate>
		<guid isPermaLink="false">http://dlweinreb.wordpress.com/2007/12/31/the-technology-and-business-of-objectstore/#comment-320</guid>
		<description>Dan,

Just stumbled on your blog. This post brings back memories -- I was a consultant at Object Design under Guy Morgante and Greg Foudray, Some of my best technical times were with debug builds of ObjectStore running on my laptop while helping store, retrieve. and analyze data from Intel for simulations of their first Pentium chip. I can honestly say that only once since did I ever work with such an overall strong team of engineers. It was also the only product where I had dreams about reading code, mentally running it to see how the memory mapping would work, and re-architecting it.

John S.</description>
		<content:encoded><![CDATA[<p>Dan,</p>
<p>Just stumbled on your blog. This post brings back memories &#8212; I was a consultant at Object Design under Guy Morgante and Greg Foudray, Some of my best technical times were with debug builds of ObjectStore running on my laptop while helping store, retrieve. and analyze data from Intel for simulations of their first Pentium chip. I can honestly say that only once since did I ever work with such an overall strong team of engineers. It was also the only product where I had dreams about reading code, mentally running it to see how the memory mapping would work, and re-architecting it.</p>
<p>John S.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Max Lybbert</title>
		<link>http://danweinreb.org/blog/the-technology-and-business-of-objectstore/comment-page-1#comment-319</link>
		<dc:creator>Max Lybbert</dc:creator>
		<pubDate>Wed, 02 Jan 2008 20:37:40 +0000</pubDate>
		<guid isPermaLink="false">http://dlweinreb.wordpress.com/2007/12/31/the-technology-and-business-of-objectstore/#comment-319</guid>
		<description>And now that I&#039;ve read the article that was published previous to this one, I can see (1) the difference between Berkeley DB and (2) the statement that &quot;These days a lot of value can be had from database systems that don’t have query languages at all, such as the various versions of the Berkeley Database from SleepyCat (now part of Oracle). Sometimes just looking up a record by key, ISAM style, is exactly what you need.&quot;</description>
		<content:encoded><![CDATA[<p>And now that I&#8217;ve read the article that was published previous to this one, I can see (1) the difference between Berkeley DB and (2) the statement that &#8220;These days a lot of value can be had from database systems that don’t have query languages at all, such as the various versions of the Berkeley Database from SleepyCat (now part of Oracle). Sometimes just looking up a record by key, ISAM style, is exactly what you need.&#8221;</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Max Lybbert</title>
		<link>http://danweinreb.org/blog/the-technology-and-business-of-objectstore/comment-page-1#comment-316</link>
		<dc:creator>Max Lybbert</dc:creator>
		<pubDate>Wed, 02 Jan 2008 17:40:33 +0000</pubDate>
		<guid isPermaLink="false">http://dlweinreb.wordpress.com/2007/12/31/the-technology-and-business-of-objectstore/#comment-316</guid>
		<description>The way ObjectStore did/does things makes me wonder if Berkeley DB (or Samba&#039;s TDB -- http://sourceforge.net/projects/tdb/ ) couldn&#039;t serve as the backbone for a clean-room implementation.</description>
		<content:encoded><![CDATA[<p>The way ObjectStore did/does things makes me wonder if Berkeley DB (or Samba&#8217;s TDB &#8212; <a href="http://sourceforge.net/projects/tdb/" rel="nofollow">http://sourceforge.net/projects/tdb/</a> ) couldn&#8217;t serve as the backbone for a clean-room implementation.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
