Wednesday, February 6, 2008

News from the OMG Object Database Technology Users and Vendors

I have received some information from Mrs. Charlotte W. Wales (The MITRE Corporation) related to the OMG Object Database Technology Users and Vendors Roundtable, which took place on 11 December 2007 at the OMG meeting in Burlingame, CA. I have listed it below as I have received it.

--------------------------------------------------------------------------------

News from OMG Object Database Technology Users and Vendors Roundtable, 11 December 2007

All the hard work that went into preparation of the Next Generation Object Database Standardization White Paper, augmented by the publicity received here at the ODBMS.ORG Portal (in the Forum), resulted in a successful Users and Vendors Users
and Vendors Roundtable at the OMG meeting last December in Burlingame, CA. The meeting attendance of 14 was a healthy mixture of users and vendors representing Objectivity, Versant, Gemstone, db4Objects, and Fujitsu (used to market Jasmine)
Tibco, Progeny, Boeing, TUMunich, Kangwon Univ (Korea), PJI, Syracuse Research, and MITRE.

After a welcome and introductions conducted by Char Wales (MITRE), Mike Card (Syracuse Research), calling in from his sickbed in New York, introduced the Next Generation Object Database Standardization effort, providing important historical and technical background including his role in the ODMG.

Prof K. Subieta (PJIT) then gave a presentation on his Stack Based Approach to Object Databases. Anat Ghafni (db4Objects) presented and summarized the high points of the sometimes lively discussions that appeared in the ODBMS Forum in response to the White Paper. These presentations laid an excellent groundwork for discussions during the ensuing Roundtable, moderated by Mike Card and Char Wales, which fulfilled the Roundtable’s “Objectives” – a completely open Forum, with nothing off limits.

The conclusion of the Roundtable was an agreement to work on a Roadmap for achieving the goal of an adopted Next Generation Object Database Standard with vendor implementations by 2009. Facilitated by teleconferences – the plan is to have an initial version of this Roadmap ready in time to present at the ICOODB 2008 ICOODB 2008 conference in Berlin and at the OMG Technical Committee meeting in Washington, DC, both scheduled for the same week in March 2008. If things proceed well, it is hoped that an RFP will be ready for issuance by June 2008, and – with luck – initial
submissions ready for review by the end of this year.

For the benefit of those who have not been part of this “from the beginning”, a recap of a few of the significant events within OMG leading to the Roundtable last December is in order:

-Sep 03: 1st Object Database Working Group meeting; idea of improving existing ODMG3.0 standard introduced.

-Nov 03, Apr '04: “Socialization” of this idea within OMG.

-May 04: Morgan-Kauffman grants OMG the right “to publish, revise, disseminate and use original and revised versions of the Standard as an OMG specification (the “Specification”)” subject to limitations detailed in letter to OMG.

-Sep 05: ODBMS.ORG portal launched.

-Dec 06: Decision to expand scope to Object Database Technology (including modeling and mappings between object and relational).

-Feb 06: Object Database Technology Request for Information (RFI) Issued.

-Jun 06: Report summarizing 11 RFI responses identified three ways forward.

-Sep 07: Next-Generation Object Database Standardization White Paper issued.

Charlotte W. Wales

Labels: ,

Wednesday, December 19, 2007

What Standards for Object Databases?

I thought it would be interested to give you an insight of the discussion currently going on at ODBMS.ORG. The issue is what Standards for Object Databases?
Here are two notes, one from Wiliam Cook and one from Mike Card.
For more details on the discussion, please visit the Forum at ODBMS.ORG.

A copy of the OMG white paper on Next-Generation Object Database Standardization written by the OMG`s Object Database Technology Working Group, can be download here Next-Generation Object Database Standardization

Roberto V. Zicari
--------------

Hi everybody.
I'm sorry that I was not able to attend the meeting on Dec 12. I hope that someone can post some information on it. I think it is great that these topics are being discussed, but I also have some significant disagrements with points being made here.

My biggest issue is that I don't agree with the premise of the OMG RFI and Prof. Subieta's response. The premise is that the problem is "the underlying lack of a set of precise definitions and semantics that has plagued ODMSs for years" [mpcard]. The assumption here is that people didn't use object databases because OODBs didn't have a solid theory like relational algebra. I do not believe that was the reason. I think the reason was that (1) most of the original OODBs systems didn't support query optimization or transactions (2) they had difficulty externalizing their data in a way that could be evolved and used by other tools (3) when the did introduce query languages, they were subject to the same impedence mismatch as relational systems.

I think that Impedence mismatch is a language problem not a data problem. Relational data maps very well to traditional data structures in C, Pascal, or any other programming language: just create an array of records. Relational data maps fairly well to objects too, especially since you can represent relationships easily. The impedence mismatch comes from the need to partition a program into two parts: a query that is sent to the database, and a client program that uses the query results. Previously this partitioning was done by putting the query into a string, which causes all sorts of problems. Native Queries and LINQ are two more modern and effective ways to partition a program into a query and a client, so that the semantic connections between them are preserved. Prof. Subieta's proposal does not address this problem, as far as I can tell.

As for data models, I think that Entity-Relationship models, UML class diagrams, and Subieta's models are all essentially equivalent. They have the concept of records of attributes connected by relationships. The relational model also has ses of records, but the relationships are not explicit in the data model, but must be specified on each join operation. You can argue over fine points of inheritance and such things, but these are small points compared to the basic similarities of the models. It is not fair to compare any of these models to the network model, which as far as I can tell was a hack on top of the hierarchical data model. It is asuming that hierarchical data models have had a resurgence under the name XML; these are very useful for data transmission but are not a suitable foundation for a database.

As for query languages, I don't think that the stack-based query language has anything fundament to offer over OQL. It is like saying that an HP calculator with postfix notation has a more solid theoretical model than a standard calcular that uses infix. I also want to point out that the core of OQL is not really object-oriented, becuase it does not deal with methods. It is just a great query language for ER data models. The key point is "entities and relationships" and that is what OQL was designed for and is good at. I do not agree that OQL is inconsistent. Suad pointed out some difficulties with the Java binding, and perhaps there are some other small problems with the way the standard was defined. But rather than fix these small issues, he claimed that the entire system is inconsistent.
See here for an alternative and more balanced view. I think that Prof. Subieta's query syntax is perfectly reasonable as well. But it is not a fundamental advance, as far as I can tell.

NOTE: Native Queries are not propretary; they were described by one of my students and me in an ECOOP paper and then implemented by db4objects. They have been implemented by others as well, although not in any commercial systems. They are also similar to Microsoft's LINQ in some ways.

So, to summarize. I think that OMQ is again trying to solve the wrong problem. I sent in a response to the RFI; and yes, it wasn't what you wanted to hear. But I'm going to keep saying it.

The problem is not a lack of a grand unifying theory. There is plenty of theory to cover ER models, OQL, and other traditional ideas. The disucssions you are having don't deal with impedence mismatch, which can happen even with an object-oriented language accessing an object-oriented database using OQL! If you put OQL into a string, then you are going to have impedence, and nothing about the formality of the data model or query language is going to fix it. The real problems are impedence mismatch, good query optimization, solid transaction support, evolution of data, and scalability to multiple servers. These are things that OODB vendors didn't address until it was too late. They thought that objects alone would magically make everthing work well. But.. they don't.

I'm sorry to be so negative about this, but I really think that there is an opportunity to improve the DB/PL interface.

Wiliam Cook
Assistant Professor
Department of Computer Sciences
University of Texas at Austin

--------------
Hello Prof. Cook-

You wrote:

"My biggest issue is that I don't agree with the premise of the OMG RFI and Prof. Subieta's response. The premise is that the problem is "the underlying lack of a set of precise definitions and semantics that has plagued ODMSs for years" [mpcard]. The assumption here is that people didn't use object databases because OODBs didn't have a solid theory like relational algebra. I do not believe that was the reason. I think the reason was that (1) most of the original OODBs systems didn't support query optimization or transactions (2) they had difficulty externalizing their data in a way that could be evolved and used by other tools (3) when the did introduce query languages, they were subject to the same impedence mismatch as relational systems."

I don't think the RFI itself had a "premise," at least that I am aware of. Regarding your 3 reasons why ODBMSs were not widely adopted, I would argue that you could trace all 3 of these issues to the lack of a good underlying object model and set of definitions and semantics. I cannot see how you think the "impedance mismatch" or DB/PL interface issue will be solved without laying a good theoretical foundation.

"The problem is not a lack of a grand unifying theory. There is plenty of theory to cover ER models, OQL, and other traditional ideas. The disucssions you are having don't deal with impedence mismatch, which can happen even with an object-oriented language accessing an object-oriented database using OQL! If you put OQL into a string, then you are going to have impedence, and nothing about the formality of the data model or query language is going to fix it."

Sure, but no one has ever tried to tie object definition/store models all the way up to a QL, defined with an abstract query processor, like Prof. Subieta has (at least as far as I have read). It is true that the formality of the data model won't solve the "impedance mismatch" between a query string and a native PL, but again this falls into the area of further work we have to do. Everyone thinks they have the best way to do this: everyone in ODMG thought their APIs were best and their way was best, and that a formal set of definitions, semantics, and object models was unnecessary because in the end developers just need to write code. That's why ODMG chapter 2 was so weak and why there were so many "holes" in the ODMG specification: we were trying to write something that would cover several existing products without requiring anyone to make significant code changes. Users didn't care about the standard because it did not guarantee application code (or even data) portability, so what did it matter? There was no conformance test suite, so you couldn't even say for sure who was conformant to what.

"The real problems are impedence mismatch, good query optimization, solid transaction support, evolution of data, and scalability to multiple servers. These are things that OODB vendors didn't address until it was too late. They thought that objects alone would magically make everthing work well. But.. they don't."

Yes these are real problems but I would argue that solving them will require a common theoretical foundation from which to build. I guess we'll see if there is consensus on that view or not at next month's ODBTWG telecon.

-Mike Card
Syracuse Research Corporation (SRC)

Labels: ,

Monday, December 3, 2007

Tuesday, December 12, OMG Object Database Technology Users and Vendors Roundtable

For those of you interested in standards, here is an event you may want to consider attending, the:

Object Database Technology Users and Vendors Roundtable
on Tuesday, December 12, 2007 08:00-12:00 am, part of the
OMG Technical Meeting in Burlingame, CA

The Meeting is Sponsored by the OMG Middleware and Related Services Platform Task Force (MARS)

The Committee is composed of Michael Card Char Wales Anat Ghafni and Kazimierz Subieta.

I copy here the Objective of the meeting, as written by the above Commitee:

"Gather together vendors in and users of Object Database Technology in order to learn and share their opinions on the work performed so far by the OMG Object Database Technology Working Group (ODBTWG).

Working from the responses to the Request for Information (RFI) issued in February 2006, the WG has been investigating the research done by Prof. Kazimierz Subieta of the Polish Japanese Institute for Information Technology (PJIT) in Warsaw, Poland. Prof. Subieta’s team has developed an approach called “Stack-Based Architecture (SBA)” for defining the contents of an object database, the semantics of an abstract stack-based query processor, and its associated query language (SBQL). The WG considers this work to represent the object equivalent of the relational calculus in that it provides a precisely-defined, semantically complete set of definitions of what objects are, how they are stored, and how they can be queried.

Looking ahead, we would like to consider basing any future object database standard on the SBA object model so that the language bindings, query languages, etc. that follow are well-defined, self-consistent, and complete. Doing this would address many of the criticisms leveled at the earlier ODMG standards (e.g,, ODMG 3.0).

The objective of this meeting is not only to explain how we think the principles of the SBA could be incorporated into a future object database standard but also to listen to the opinions of object database vendors and users regarding this idea. To that end, nothing will be off limits. Let this be a forum for open discussions on what future object database standards should or should not look like, open-source collaborative projects such as reference implementations or conformance test suites, trends in the object database marketplace, level of user interest in object database technology, etc. "

And here is the agenda:

-8:00 – 8:15 Call to Order: Introductions and Agenda Char Wales

-8:15 – 8:30 Introduction to the Next Generation Object Database Standardization Effort Mike Card

-8:30 – 9:45 Keynote: “Object database semantics: the stack-based architecture” Prof . Kazimierz Subieta

- Break 9:45 – 10:00

-10:00 – 10:30 ODBMS Forum: Summary of Initial Reactions to White Paper Anat Ghafni

-10:30 – 11:30 Roundtable: Users and Vendors reactions, comments, discussions Mike Card – Facilitator

11:30 – 12:00 Moving Forward – Plan of Action Char Wales – Facilitator

If you are interested to attend, you would need to register here

Labels: ,

Tuesday, November 20, 2007

How the OMG technology process works

I was asked by a number of people how the OMG standardization process works.

I have found a link to a power point presentation which explains the essence of how the OMG technology process works
and it's the official OMG word rather than just my interpretation of it.

Here's the link to a Power Point presentation (as .pdf ) which does not require an OMG username/password to access: OMG Process

Char Wales explained me that the work they are doing in the Object DB technology WG fits into that structure.

Labels: ,

Monday, November 5, 2007

Object Database Technologies Users and Vendors Roundtable

Here is an interesting information. As you may know, after a long period of no activity some work on standards for Object Database Systems resumed under the umbrella of the Object Management Group (OMG).

For those of you who are interested in standards, and willing to actively participate in such activites, here is an opportunity:

I have received this note from Mike Card:

"The OMG is hosting an Object Database Technologies Users and Vendors Roundtable in Burlingame, CA at the Hyatt Regency San Francisco Airport on Tuesday morning, December 11th 2007.

I will provide an update with the exact start time and the name of the ballroom/ conference room where the round-table will be held as the date gets closer.

The purpose of this meeting will be to get industry and user reaction to the work done so far by the OMG Object Database Technology Working Group (ODBTWG). Our group has been investigating the research done by
Prof. Kazimierz Subieta of the Polish Japanese Institute for Information Technology in Warsaw, Poland. Prof. Subieta’s team has come up with a so-called
Stack-Based Architecture (SBA) for defining the contents of an object database and the semantics of an abstract stack-based query processor and its associated query language (SBQL). Their work is the object equivalent of the relational calculus in that it provides a precisely-defined, semantically complete set of definitions of what objects are, how they are
stored and how they can be queried. We would like to base any future object database standard on the object model he has developed so that the language bindings, query languages, etc. that follow are well-defined, self-consistent, and complete. Doing this would address many of the criticisms leveled at the earlier ODMG standards.

The ODBTWG has prepared a white paper on our approach to future object database standardization and our incorporation of Prof. Subieta’s ideas which you can download from: ODBMS.ORG

Prof. Subieta will be in attendance at this meeting and we will have him give an overview and brief demonstration of his work, concrete implementations of which have been built for various EU projects.

We will then open the discussion up to all participants, we are especially eager to hear thoughts from object database vendors about Prof. Subieta’s ideas and to explain how we think his ideas could be incorporated into future object database standards. We would welcome discussions on what future object database standards should or should not look like, open-source collaborative projects such as reference implementations or conformance test suites, trends in the object database marketplace, etc. In short, we are seeking industry participation and nothing will be off-limits.

If you are interested to attend, there is a $150 registration fee for this event, to register please visit here

There should be a link there soon to register for this event.

Michael P. Card, Syracuse Research Corporation

Labels:

Tuesday, October 16, 2007

OMG White Paper on Next-Generation Object Database Standardization published!

As I have anticipated, I have published in ODBMS.ORG a white paper on Next-Generation Object Database Standardization written by the OMG`s Object Database Technology Working Group.

It is a very interesting readings!

Labels:

Friday, October 5, 2007

Next-Generation Object Database Standardization?

I will be shortly publish in ODBMS.ORG a white paper on Next-Generation Object Database Standardization written by the OMG`s Object Database Technology Working Group.

Here is the abstract of the White Paper:

"Following the dissolution of the Object Data Management Group (ODMG) in 2001, standardization efforts for object databases languished. What has emerged since is a fractured marketplace where each vendor has developed a unique set of programming interfaces and features and no truly portable way of interacting with an object database exists. In 2005, the OMG’s Object Database Technology Working Group was formed as the successor to the ODMG, and our first effort has been to create the object equivalent of the relational calculus. We believe that the foundation for this “object calculus” can be found in the research done by Prof. Kazimierz Subieta and his students at the Polish-Japanese Institute of Information Technology. We have prepared this white paper to serve as an introduction to Prof. Subieta’s “stack-based architecture” (SBA) and to define the OMG version of it. The definitions and semantics of SBA will, we believe, allow the construction of a complete and correct object model that supports a powerful object query language as well as a complete and correct set of equivalent native programming language bindings. "

What is the goal of this initiative?

Quoting the white paper: "What we would like to have in the end is a new standard for object databases that is based on a sound theoretical framework with precise and complete definitions. Prof. Subieta’s work is a great starting place because it shows what must be available in an object store in order to support an advanced query language. What we imagine is a new standard which could be fashioned after the ODMG 3.0 specification, something like this:

OMG “Next Generation” Object Database Standard (“ODMG 4.0”)
Chapter 1 – Introductory material
Chapter 2 – New object model based on the abstract store model and an abstract stack-based object query language (AOQL), includes definitions and detailed semantics of all optional features to be standardized
Chapter 3 – XML/XSD specification for data import/export as replacement for “ODL”, provided for all conformance levels
Chapter 4 – Full syntax of abstract query language, provided for all conformance levels
Chapter 5, 6, … - Programming language APIs for specific language bindings

Our new specification would not have to be done in this way, but such an organization would be familiar to those who have used ODMG 3.0 in the past. Of prime importance would be clear definitions and explicit semantics (especially in chapter 2), even including the use of state diagrams or Petri nets as needed to convey the semantics of how certain features are supposed to work in conformant products.

Looking forward, the plan is (assuming there is sufficient vendor interest) for the ODBTWG to prepare (and then issue from its parent task force) one or more RFPs that together will establish the full and complete definitions of the abstract query language (AOQL) and the semantics of the abstract store models, as well as, the semantics and behaviors of optional features (compliance points). This will be the Platform Independent Model (PIM) for a conformant object database. When the PIM is defined, it will serve as the basis for a series of RFPs to develop specifications for concrete implementations of the "Next Generation Object Database" in Java, C++, etc., i.e., Platform Specific Models (PSMs)."

It will be interesting to see if this initiative takes off and if sufficient vendors support it.
I will be writing about it in my next posts.

Roberto V. Zicari

Labels: