Title: RDB
1RDB OODB - ORDB Comparison
2RDB
- Simple data model (but less versatile)
- Simpler for user to learn (OO programmer?)
- Easier to optimize (for simple access?)
- Strong market-share (inertia of change)
3ORDB OODB Similarities
- Similar OO type system ambitions
- Objects/OIDs
- Methods
- ADTs
- Constructed types
- Inheritance
- Object-QL
4Advantages of Adding OO
- Richer Data Types
- Simplify DB design
- Simplify query specification
- Reusability of code (more natural to OO
programmer) - No impedance mismatch
5ORDB OODB
ADT Optional / mixed (also key) Uniformally enforced
methods Externally def. Methods register executable One pure OO language Seamless with PL
QL SQL3 moving target ODMG OQL stable
SQL3 300 pages OQL 3 pages
SQL3 one standard? OQL binding with different PL models
6ORDB OODB
Row special data type (superset of relation) Many type constructors
Results are tables again Any container data type
Foreign keys restricted to one table scope OID references hard to support dangling pointers
Design ER diagram ? Directly use OMT, or OO design tools
Target many small objects (disk in/out) disk intensiveshort transactions Target large complex objects (long in memory) long transactions, client-side caching
7ORDB Extra Goodies
- DBMS features inherited from RDB into ORDB
- Constraints
- Views
- Triggers
- Priviledges (security)