On Wed, 06 Jun 2007 18:06:15 -0700, Chris Muller asqueaker@gmail.com wrote:
Yes, but not relational tables in the sense of a relational database. OBDMS's still have to capture the shape of the object graph, and for that "one big table" is typically used.
For example, one approach might try to keep the edges with one big two-"column" table:
oid | referencedOid
which would have to "join" to itself to render the graph (but might not perform very well).
Magma uses variably-sized "records" that embody the nodes. Every object is represented by a first-class "MaObjectBuffer" with the following fields:
oid | class | referencedOid(1)..referencedOid(n)
You might be interested in the detailed documentation of Magma's file format Brents team put together:
http://wiki.squeak.org/squeak/uploads/2665/magma_file_format.pdf
Cool, Chris. Thanks!
===Blake===