Welcome to Objectivity, Inc. -- makers of the industry leading Objectivity/DB object-oriented database management platform, Grid Certified (Levels 1 through 6), and SOA compliant Twitter LinkedIn YouTube RSS Feed

.

Friday, October 30, 2009

Objectivity Offers An Alternative To Open Source

It was interesting to read the news this week that Red Hat has made a financial investment in EnterpriseDB. Red Hat is, of course, the leading example of a company that has made the open source model a financial success. EnterpriseDB is based on the very capable PostgreSQL open source DBMS. It makes sense for Red Hat as they are still locked in a battle with Oracle, which delivers its own version of Linux, for enterprise level sites. Oracle recently acquired MySQL, the most popular open source RDBMS, when it purchased Sun Microsystems.

Open source hasn't been much of a success in the ODBMS market, perhaps because the installed user base is much smaller than the RDBMS base. When db4objects entered the market with their open source ODBMS a few years ago, there was an upsurge in interest in the technology. Unfortunately, despite a large volume of downloads, they never managed to make it to the critical mass needed to sustain their efforts. Versant acquired them for $2.1 million in 2008 (Sun paid about $1 billion for MySQL), so at least the technology has survived, particularly their LINQ implementation, which was pivotal in encouraging the other ODMG members to support LINQ. The Objectivity/DB Release 10 .Net for C# product will support LINQ, underpinned by an enhanced query engine.

Why Objectivity/DB Isn't Open Source

The Objectivity/DB kernel isn't going to be released in open source form any time soon. Quality Assurance for a large body of interoperable, multi-platform code is a very resource-intensive process, requiring a very complex test environment. When we originally scoped out Objectivity/DB, we toyed with the idea of releasing a tool kit of interoperable components, so that developers could select just the pieces needed for a particular application, or even build their own APIs and features. Unfortunately, we couldn't figure out a viable way to test and support a complex product of that type with the tools available at the time (circa 1989) - think "makefile." A few components would appear in any configuration, but we quickly identified hundreds of viable combinations that would have been a nightmare to system test.

Replaceable Components

We've taken an alternative but time-honored approach over the years, adopting the replaceable component model. It leveraged the old "hooks" idea. The first such component appeared in Release 6, when we added support for the industry standard High Performance Storage Systems (HPSS) architecture. We provided two replaceable components - The Objectivity Open File System (OOFS) and the Generalized Security Architecture (GSA) capability. We've added others since then, including the range splitters in the Parallel Query Engine and filters in the query agents.

OOFS allows users to replace the standard filesystem layer with modules of their own. It can be used to interface to novel storage systems or to add specialized caching and streaming capabilities to the Advanced Multithreaded [data] Servers. It also allows users to "piggyback" extra data on the back of messages between a client and the AMS. That can be used to send policy directives, such as "open for random access read usage" to HPSS, for instance. GSA enables users to incorporate their own security mechanisms into AMS, making it possible for local sites to administer and control access to their own data while still collaborating in a federation.

Watch This Space

Objectivity/DB Release 10 will incorporate additional replaceable components that use a standardized "plug-in" architecture. The advantage of this approach, over the pure open source model, is that if users can run the validation tests that we supply with each replaceable module we'll be able to support their deployed applications. We think that it provides most of the flexibility that users have asked for but also enables us to deliver a more stable and predictable product.

We've also started delivering some open source samples in the Developer Network area of our main site. Keep a close an eye on that area as we'll be delivering some very interesting and fully functional modules there in the near future.

Also, we would like to know what kinds of open source applications you would like to see in our Developer Network. Give me your ideas in the comments below.

Labels: , ,

0 Comments:

Post a Comment

Links to this post:

Create a Link

<< Home