This module explored the performance implications of the exciting new object-oriented features introduced in Oracle.
The main points of this module include:
- Abstract data type (ADT) is great for grouping related data columns together and reusing them in many Oracle tables.
- Oracle allows for OIDs to be datatypes. You can create a column in a table that contains the OIDs of other tables.
- Getting data from other tables is achieved by de-referencing the OID. This uses the DEREF syntax.
- The DEREF command displays the contents of the row that corresponds with the OID.
- De-referencing an OID is far faster than joining tables together, and requires less disk I/O and fewer block reads.
- Because Oracle uses the term OID to mean an Object ID, or the Oracle Internet Directory, be careful when reading the Oracle documentation.
Oracle allows for the definition of repeating data types. These data types can be inserted into tables, avoiding the need to join tables together.
Rather than rebuild the Oracle engine as an object-oriented architecture, Oracle has decided to keep the base relational engine and add object functionality on top of the standard relational architecture.
While claiming to be an active member in the Object Management Group (OMG), Oracle has departed from the OMG's standard for "pure" object databases as defined by the
Object Data Management Group.
Oracle's intent is to provide a generic relational database while extending the architecture to allow for objects.
The object layer of Oracle offers the following features:
- abstract data typing,
- definition of aggregate objects,
- coupling of data and behavior,
- abstraction,
- inheritance,
- polymorphism,
- encapsulation, and
- extensibility.