Long Post - Re: How are OO databases doing

From: <bob.walker_at_gemstone.com>
Date: 16 Feb 2006 12:35:27 -0800
Message-ID: <1140122127.450046.297260_at_f14g2000cwb.googlegroups.com>


Hi Arturo,

How are OO databases doing? I've worked at GemStone Systems since 1996 and am happy to give you my perspective on this. It's not my intent to make a sales pitch here, just one person's perspective. First, a little history might be useful:

In the early '90s, prior to the creation of Java, OO Analysis, Design and Programming was beginning to take root in the Fortune 500. This was largely due to IBM's creation of VisualAge for Smalltalk, which was based on OTI Smalltalk. In essence, this put IBM's stamp of approval on OO in general and Smalltalk in particular. As a result, many traditionally "Big Blue" customers and other early adopters embarked on implementing major projects using VA Smalltalk, VisualWorks or Smalltalk/V. I know of several very large enterprise projects that were started in that era, many are still in use today.

Throughout the '90s, the GemStone/S OODBMS was adopted by numerous companies as they began to build applications with larger and more complex object models. Most of these early adopters m simply "got it" in terms of what the product provided, and implemented systems without any RDBMS whatsoever. Others had requirements that their GemStone/S systems fit into a much larger heterogeneous environment, interacting with IMS hierarchical databases and/or DB2 or Oracle, VSAM, and you-name-it.

Starting in late 1995, as Java appeared on the horizon, most of the advanced technology departments that were advocating OO and Smalltalk recognized the potential of Java and put nascent projects on hold. There were several years of "Let's wait and see how this Java thing evolves before investing millions of dollars in critical new technology". We all know the outcome; Java is now the dominant OO programming language.

Setting that aside for the moment, GemStone/S still has a large installed customer base from that time period. It is a mature and robust product with a 20 year history. These customers all plan to continue development of their systems and are migrating to the 64 bit implementation. In fact, GemStone sees continued interest in the product.

Now back to Java. Most Smalltalk programmers and architects don't generally feel the need to transition to Java; a lot of them feel it is a step backwards. A very large portion of today's Java programmers and architects don't know about the successful OODBMS based applications out there today.

I believe that there is a resurgence of interest in object persistence; this can be attributed to a normal technology adoption cycle. When large companies adopt a new technology, they first start by building prototypical, non mission critical applications. Larger, more costly, more complex and higher risk projects are started based on the knowledge gathered in the first and subsequent applications, and the need to replace, extend or update old systems. I feel that Java applications have reached the threshold at which O/R mapping has begun to be a very real pain point (we can debate this later, this post is long enough as is!) I can personally attest to seeing this very same trend in the early to mid '90s.

It's clear that this is happening; just look at the number of pure Java object databases projects that are sprouting up.

One of the main reasons people don't hear much about the successful systems based on GemStone's OODBMS (and probably other vendor's) products is that these systems yield a powerful competitive advantage. The customers don't want to give that up and in some cases there are strong NDAs in place. Another reason may be that the major RDBMS players don't want people to realize the advantages of OODBMS until they can own the revenue stream. Yet another is that successful use of OODB's requires a different analysis process than that of relational technology. In a way, it's like making the transition from procedural programming to OO programming (trying not to rant on that!)

There are certainly pros and cons to using either an RDB or an OODB. That's the stuff of religious wars, and good fodder for another thread.

I'd recommend taking a look a http://www.ODBMS.org, a new, vendor neutral site dedicated to Object Database technology. For more about GemStone Facets (the Java oodb) see http://www.facetsodb.com

Any way, I hope that this helped answer the question.

Best Regards,
Bob

Bob Walker
Director, Facets Technologies
GemStone Systems



The opinions expressed here are my own and do not necessarily reflect those of GemStone Systems, Inc. Received on Thu Feb 16 2006 - 21:35:27 CET

Original text of this message