Implementation Issues
with
Object Relational Database
System
04/21/172
Several Implementation Challenges Due to
Enhanced Functionality of ORDBMS
 Storage & Access Method
 Query Processing
 Query Optimization
04/21/173
Storage & Access Method
 efficiently store ADT objects and structure objects and provide efficient
indexed access to both
● Large ADTs, like BLOBs(Binary Large Object),
require special storage, typically in a different
location on disk from the tuples that contain
them
● Disk-based pointers are maintained from the
tuples to the
objects they contain.
● A complication arises with array types. Arrays
are broken
into contiguous chunks, which are then stored in
some order
on disk.
04/21/174
Query Processing
 ADTs and structured types call for new functionality in
processing queries
● To register an aggregation function, a user must implement three methods,
which we call initialize, iterate and terminate.
● ADTs give users the power to add code to the DBMS; this power can be abused.
● A buggy or malicious ADT method can bring down the database server or even
corrupt the database.
● User-defined ADT methods are very expensive
04/21/175
Query Optimization
 To handle new query processing functionality, an optimizer must know
about the new functionality and use it appropriate
04/21/175
Query Optimization
 To handle new query processing functionality, an optimizer must know
about the new functionality and use it appropriate

Implementation Issue with ORDBMS

  • 1.
  • 2.
    04/21/172 Several Implementation ChallengesDue to Enhanced Functionality of ORDBMS  Storage & Access Method  Query Processing  Query Optimization
  • 3.
    04/21/173 Storage & AccessMethod  efficiently store ADT objects and structure objects and provide efficient indexed access to both ● Large ADTs, like BLOBs(Binary Large Object), require special storage, typically in a different location on disk from the tuples that contain them ● Disk-based pointers are maintained from the tuples to the objects they contain. ● A complication arises with array types. Arrays are broken into contiguous chunks, which are then stored in some order on disk.
  • 4.
    04/21/174 Query Processing  ADTsand structured types call for new functionality in processing queries ● To register an aggregation function, a user must implement three methods, which we call initialize, iterate and terminate. ● ADTs give users the power to add code to the DBMS; this power can be abused. ● A buggy or malicious ADT method can bring down the database server or even corrupt the database. ● User-defined ADT methods are very expensive
  • 5.
    04/21/175 Query Optimization  Tohandle new query processing functionality, an optimizer must know about the new functionality and use it appropriate
  • 6.
    04/21/175 Query Optimization  Tohandle new query processing functionality, an optimizer must know about the new functionality and use it appropriate