Presentation is loading. Please wait.

Presentation is loading. Please wait.

Completeness Criteria for Object- Relational Database Systems by Won Kim April 2002 Sang Ho Lee School of Computing, Soongsil University

Similar presentations


Presentation on theme: "Completeness Criteria for Object- Relational Database Systems by Won Kim April 2002 Sang Ho Lee School of Computing, Soongsil University"— Presentation transcript:

1 Completeness Criteria for Object- Relational Database Systems by Won Kim April 2002 Sang Ho Lee School of Computing, Soongsil University shlee@computing.ssu.ac.kr

2 2 The purpose of this paper is to propose a practical metric for object-relational completeness, so it may serve as a reference for determining whether a product is an ORDB, and for determining the degree of completeness of the product Seven major categories Each category consists of “primary” and “secondary” capabilities

3 3 Data Model - primary (1) Classes, instances, atomic attributes A class is a table in an RDB with Methods Set-valued attributes Attributes whose domains may include references to classes Abstract data type OID per instance An instance has a unique and immutable identifier, OID Encapsulation The user may write a method and attach it to a class

4 4 Data Model – primary (2) Inheritance Multiple inheritance of attributes, methods, integrity constraints on attributes name-conflict resolution (not prevention) Arbitrary domain Alphanumeric type Abstract data types (ADTs) Class reference  Class reference as domain of an attribute  OID-based object references  Expedite an navigational access in a nested object Set-valued attributes May be a set, a multiset, or a sequence

5 5 Data Model – primary (3) OID references Single OIDs Set of OIDs

6 6 Data Model - secondary Free-floating functions These do not belong to any particular class, as such are not inherited Built-in functions, user-definable functions, stored procedures Inheritance hierarchy of a classes as domain Set-inclusion semantics associated with an inheritance hierarchy One of the fundamentals of the OO paradigm Class attribute, class method Example: aggregate properties of all instances of a class (e.g. average weight of all Automobile instances) Meta-class, meta-meta-class, …

7 7 Query Language – primary (1) An ORDB must support an SQL-like and its API (function calls) SQL-92 support Entry level Advance level Query involving nested objects A query construct known as “path expression” is necessary Query involving set-valued attributes Query involving methods/functions in search predicates Query involving an ADT

8 8 Query Language – primary (2) Views A view is a subset of a database that satisfies user- defined query conditions Full RDB views Oid-based fetch Access objects by OIDs An capability to successively “fetch next” objects

9 9 Query Language – secondary Query involving an inheritance hierarchy All instances of a class or all instances of an inheritance hierarchy rooted at that class Views An ORDB should not allow a view in the inheritance hierarchy of classes Inheritance hierarchy of views  The user should construct an inheritance hierarchy of views, separate from an inheritance hierarchy of classes View reference as domain of an attribute

10 10 Computational Model Workspace memory control Lock caching Automatic garbage collection Object swapping Query processing involving updated objects in the workspace Support for dynamic schema changes on objects in the workspace Pointer swizzling Conversion of the storage format of objects between the database format and the memory format An ORDB should support both facilities

11 11 Database Tools (1) Important object modeling capabilities include set-valued attributes, ADTs, nested objects Pre-compiler for OO SQL Database administration tool Full RDB tool capabilities Query generator/result viewer Full RDB tool capabilities Generating and viewing OO queries

12 12 Database Tools (2) Schema designer/editor Full RDB tool capabilities OO extensions (class as domain of an attribute, inheritance hierarchy of classes, methods, free- floating user-definable functions, set-valued attributes) GUI application development tool Full RDB tool capabilities OO extensions (set-valued attributes, OID references)

13 13 Performance - primary It must be comparable (within 20%) to that of a major RDB in executing pure relational operations against a pure RDB It must be comparable (within 20%) to that of an OODB in executing OID-based navigational access in a database and in executing pointer-based navigational access in memory It must be satisfactory to the users in performing database access involving object extensions to SQL (path expression, set, ADT, method, user functions, inheritance hierarchy)

14 14 Mission-Critical Database Services – primary (1) Automatic query optimization and query processing Full optimization of RDB queries Optimization of OO queries  Query with path expressions  Query with retrieves set-valued attributes  Query with methods  Query with user-definable free-floating functions  Query that retrieves ADT-valued functions  Query that retrieves instances from an inheritance hierarchy of classes

15 15 Mission-Critical Database Services – primary (2) Indexing (create index, drop index, multi- attribute index, concurrency control, recovery) Full RDB indexing Indexing for OO queries  Query with path expressions  Query that retrieves set-valued attributes  Query that retrieves ADT-valued attributes  Query that retrieves instances from an inheritance hierarchy of classes Concurrency control Full RDB concurrency control Object-level locking Concurrency control for dynamic schema changes Concurrency control for queries and updates involving an inheritance hierarchy of classes

16 16 Mission-Critical Database Services – primary (3) Authorization Full RDB authorization Object-level authorization Authorization on methods Authorization on free-floating user-definable functions Triggers Full RDB triggers Stored procedures

17 17 Mission-Critical Database Services – primary (4) Dynamic schema evolution Full RDB schema changes Add/drop methods to a class Add/drop a superclass to a class Add/drop class methods Add/drop class attributes

18 18 Mission-Critical Database Services- secondary Security Full RDB security Security on OO extensions  Methods and free-floating user-definable functions  Inheritance hierarchy of classes  OID access  Workspace object access  Set-valued attribute access  ADT-valued attribute access Replicate service

19 19 Harnessing the Power Data type extensibility Function library for each specific non-alphanumeric type of data of interest to customers Data unification Automatic distributed query optimization and processing Automatic distributed transaction processing Facilities for homogenizing schema differences in local databases Gateway for local database systems

20 20 Discussion Now what do you think about his view?


Download ppt "Completeness Criteria for Object- Relational Database Systems by Won Kim April 2002 Sang Ho Lee School of Computing, Soongsil University"

Similar presentations


Ads by Google