Datasheet
Object Oriented Database Management Systems
There are some situations where the integration between applications and databases must be far
stronger than is possible when using RDBMSes, again mostly in high-performance applications. One
approach that’s been quite successful is for databases to store objects directly so that OOP applications
can store and retrieve objects directly, without resorting to serialization techniques.
Because object oriented database management systems (OODBMSes) store objects directly, it is possible
to manipulate data via the methods and properties of databases, and to associate objects with each other
via pointers rather than the sort of relationships discussed earlier. This leads to a more navigational style
of data access — getting one object can lead you to another, then another, and so on using these pointers.
Another feature of OODBMSes is that they can make use of polymorphism in much the same way as
OOP programming languages — some object types inherit characteristics from a single base object type.
However, other OOP features, such as encapsulation, do not mesh particularly well with the traditional
view of databases, so many people dismiss OODBMSes out of hand. Nevertheless, these DBMSes have
found a place in, for example, scientific areas such as high-energy physics and molecular biology.
Owing to the niche usage of these systems, and the fact that they are few and far between as well as
being highly specialized, they aren’t covered further in this book.
Additional Features of RDBMSes
As mentioned earlier, RDBMSes offer a lot more than the storage of data in related tables. In particular,
you can rely on most to provide:
❑ Joins
❑ Functions
❑ Views
❑ Stored procedures
❑ Triggers
❑ E-mail
❑ Indexes
❑ Security
❑ Concurrency control
❑ Transactions
❑ Remote access
❑ Backups
❑ Mirroring and partitioning
❑ Management tools
8
Chapter 1
44063c01.qxd:WroxBeg 9/12/06 10:30 PM Page 8