On 3/28/07, Daniel DeLorme <dan-ml / dan42.com> wrote:
> Austin Ziegler wrote:
> >> OODB and SQLDB seem to map 1-to-1. Instead of rows in tables you have
> >> objects in a graph. Instead of a foreign key you have a direct pointer
> >> to an object. Instead of an index on a foreign key (Foo#bar) you keep a
> >> list of references (Bar#foo[]) in the foreign object.
> >
> > There's no theory behind OODBs, much less relational theory. OODBs are
> > ways to serialize your object graph. The concepts between OODB and
> > SQLDB barely map at all, except that they both store data; the
> > concepts between OODB and relational theory are so far apart as to not
> > even be on the same planet.
> I see that you barely skimmed over my post and failed to answer any of
> the 3 ways in which I showed how OODBs and SQLDBs are similar. Instead
> you answered with something that boils down to your usual "OODBs are
> evil" mantra. Proof by repeated assertion works in politics, not
> science. (although I'm just a humble engineer; what do I know about
> lofty "science", heh?)

Sorry, Daniel, but you didn't show anything. You *claimed* that
they're similar; you conflated things that have no relationship
whatsoever. Foreign keys and object pointers aren't even remotely
related. If modern object databases are beginning to look like
relational databases (which they're not, really) it's because the
practitioners have realised that what they're doing is technical bunk.
You've confused physical implementation similarities (because SQL
database providers are hitting the ODB bong, too) with logical models.

Seriously: read about the relational data model. You won't confuse
object databases and relational databases (even SQL databases!) ever
again.

You're right that object graphs don't *have* to be hierarchical;
object databases are uniformly so, though. I highly recommend you take
the time it requires to study relational theory. I'm not a heavy
practitioner myself, anymore -- I don't do stuff that needs databases
right now.

By the by, I've never said the ODBs are evil. Just stupid and not
based on any viable theory of data modelling, and of limited utility
because of that stupidity. Relational theory, however, provides for
the ability to model anything in data storage *efficiently* (and not
related to the physical models).

-austin
-- 
Austin Ziegler * halostatue / gmail.com * http://www.halostatue.ca/
               * austin / halostatue.ca * http://www.halostatue.ca/feed/
               * austin / zieglers.ca