[Date Prev][Date Next][Thread Prev][Thread Next][Author Index][Date Index][Thread Index]

Xanadus, OODBs, and DBMSs

In response to joel's questions from about a week ago:

"1. What features/abilities of a COMPLETE DBMS system does Xanadu either lack
or is not expected to be efficient at?"

The differences between Xanadu Releases 1 and 2 and a traditional DBMS
are very fundamental. Xanadu does not have any built in concept of
"text" or "numbers" as data types: xanadu has worked very very hard to
identify organization mechanisms (filterable links and vcopying) that are
data-type-independent. So something like a "sort alphabetically" or a
"tally" is outside our current realm.

"2. How does Xanadu compare to a general purpose Object Oriented database?"

We still really need to look at this hard so we can articulate our position
successfully. For the moment, I'll just spout the current party line.

A major difference is what we are efficient at. Object servers have gone
through massive performance engineering to achieve very, very fast
retrieval of very small objects. Xanadu is oriented toward larger objects
at the moment, and we aren't sure enough about how our performance
engineering will go in the first six months to want to try to compete
with an OODB in their area of specialization. Xanadu gets its biggest
leverage when you try to relate pieces of objects that would be
called "files" in a normal directory system. If developers consider 
themselves to not be making "document-type" applications perhaps
we should back off and ask them if they make "file using" 

I can see where this advantage might be difficult to sell to a guy whose
perspective is just getting his own product to work brilliantly all
by itself. One way to sneak up on this might be as follows:

Several studies have shown that, whereas the typical MS-DOS user
has 3-4 applications that he uses regularly, Mac users typically
operates with closer to a dozen. We can expect that, as MS-DOS
users move to Windows and PM, they will start using more 
applications as well. When this happens, the competitive 
advantage shifts toward the product that does more than just work
wonderfully by itself: even more leverage goes to the product 
that can interconnect with other products. Xanadu is an enabling
technology: those applications that run on top of Xanadu can
interconnect and interoperate in ways and to extents 
heretofore unattainable.

Remind me to draw you a picture of how an OODB and a Xanadu 
might interact.

"4. Bottom line:
        A. Just how general-purpose is Xanadu vis-a-vis traditional DBMS &
           Object Oriented databases?
        B. If it is not already "oriented" this way, are the underpinnings
           in place to make it very close to a general purpose OODB?"

We are so much more general purpose than a traditional DBMS that we
have almost nothing in common with them. We probably can and 
probably will wind up looking a great deal like a very sophisticated
OODB in Release 2.0 time (though we should to discuss this pretty 
carefully: we may want to hold off on OODB-like performance till 
Release 2.5 if it's going to slow us down too much in getting a release
out there that supports multiple servers).