Providing object-oriented access to existing relational databases

The ability to use relational database technology and object-oriented technology together in an environment that preserves past instruments in relational databases and applications is very important. Many information systems use relational database systems for efficient sharing, storage, and retrieval of large quantities of data. On the other hand, object-oriented programming has been gaining wide acceptance in the programming community as a paradigm for developing complex applications that are easy to extend and maintain. The main power of object-oriented programming stems from the semantically rich modelling constructs. By definition, there are many incompatibilities between the relational and object-oriented data models. Software developers need special techniques to convert the data that is residing in a relational database to a format that is suitable for object-oriented applications to access and manipulate. This dissertation presents algorithms for extracting the structural portion of the object-oriented schema that corresponds to a given existing relational schema. Algorithms for extracting object-oriented constructs such as object classes and relationships between object classes (vis., association, aggregation, and inheritance) from the definition of an existing relational database are specified. The algorithms take into consideration many modern relational database design alternatives. A few such alternatives are the use of binary data types either to store multi-valued attributes or complex-valued attributes in a relational column, denormalization of the schema to avoid joint operations, and so on. It is assumed that the relational schema includes the definition of the primary key and foreign keys for the relations. The relations need to be at least in second normal form (2NF). User interaction is required for providing the functional dependencies for all 2NF relations, and for specifying the composition of complex objects that the binary objects may represent. The quality of the extracted object-oriented schema is evaluated using the concepts of consistency and completeness of the object-oriented schema with respect to the source relational schema. A significant result of this research is the development of an integrated environment for mapping a relational schema to an object-oriented schema without the need to modify the existing relational schema.

[1]  D. Bitton,et al.  A feasibility and performance study of dependency inference (database design) , 1989, [1989] Proceedings. Fifth International Conference on Data Engineering.

[2]  Ivar Jacobson,et al.  Re-engineering of Old Systems to an Object-Oriented Database , 1991, Conference on Object-Oriented Programming Systems, Languages, and Applications.

[3]  Ramez Elmasri,et al.  Fundamentals of Database Systems , 1989 .

[4]  Gio Wiederhold,et al.  Penguin: Objects for Programs, Relations for Persistence , 1999 .

[5]  William J. Premerlani,et al.  An approach for reverse engineering of relational databases , 1993, [1993] Proceedings Working Conference on Reverse Engineering.

[6]  Gottfried Vossen,et al.  A Survey of Database Design Transformations Based on the Entity-Relationship Model , 1995, Data Knowl. Eng..

[7]  Gerti Kappel,et al.  COMan - Coexistence of Object-Oriented and Relational Technology , 1994, ER.

[8]  Martin Andersson,et al.  Extracting an Entity Relationship Schema From a Relational Database Through Reverse Engineering , 1994, Int. J. Cooperative Inf. Syst..

[9]  Elisa Bertino,et al.  Object-oriented database management systems: concepts and issues , 1991, Computer.

[10]  Linda M. Wills,et al.  Reverse Engineering , 1996, Springer US.

[11]  R. G. G. Cattell,et al.  Next-generation database systems , 1991, CACM.

[12]  Arthur M. Keller,et al.  A C++ Binding for Penguin: a System for Data Sharing among Heterogeneous Object Models , 1993, FODO.

[13]  Stefano Spaccapietra,et al.  ERC+: An Object based Entity Relationship Approach , 1992 .

[14]  Paul Johannesson,et al.  A method for transforming relational schemas into conceptual schemas , 1989, Proceedings of 1994 IEEE 10th International Conference on Data Engineering.

[15]  Wolfgang Keller,et al.  Relational Database Access Layers A Pattern Language , 1996 .

[16]  Martin Andersson Extracting an Entity Relationship Schema from a Relational Database through Reverse Engineering , 1994, ER.

[17]  Manfred A. Jeusfeld,et al.  An Executable Meta Model for Re-Engineering of Database Schemas , 1994, Int. J. Cooperative Inf. Syst..

[18]  R. G. G. Cattell,et al.  Object Data Management: Object-Oriented and Extended Relational Database Systems (Revised Edition) , 1991 .

[19]  Arthur M. Keller,et al.  A predicate-based caching scheme for client-server database architectures , 1994, Proceedings of 3rd International Conference on Parallel and Distributed Information Systems.

[20]  Mary E. S. Loomis Object Databases - The Essentials , 1994 .

[21]  Julia E. Hodges,et al.  A Prototype Object-Oriented Geophysical Database System Developed by Re-Engineering a Relational Database System , 1995 .

[22]  Jean-Luc Hainaut,et al.  Transformation-based Database Reverse Engineering , 1993 .

[23]  Chandrashekar Ramanathan,et al.  Providing Object-Oriented Access to a Relational Database , 1994 .

[24]  James E. Rumbaugh,et al.  Relational database design using an object-oriented methodology , 1988, CACM.

[25]  R. F. Brown,et al.  PERFORMANCE EVALUATION , 2019, ISO 22301:2019 and business continuity management – Understand how to plan, implement and enhance a business continuity management system (BCMS).

[26]  R. G. Cattell Object Data Management: Object-Oriented and Extended , 1994 .

[27]  Veda C. Storey,et al.  Reverse Engineering of Relational Databases: Extraction of an EER Model from a Relational Database , 1994, Data Knowl. Eng..

[28]  FongJoseph Mapping extended entity relationship model to object modeling technique , 1995 .

[29]  Veda C. Storey,et al.  Performance Evaluation of Reverse Engineering Relational Databases into Extended Entity-Relationship Models , 1993, ER.

[30]  Mary Shaw,et al.  Software architecture - perspectives on an emerging discipline , 1996 .

[31]  Hamid Pirahesh,et al.  Using the co-existence approach to achieve combined functionality of object-oriented and relational systems , 1993, SIGMOD '93.

[32]  James E. Rumbaugh,et al.  Object-Oriented Modelling and Design , 1991 .

[33]  Arthur M. Keller,et al.  Persistence software: bridging object-oriented programming and relational databases , 1993, SIGMOD '93.

[34]  Martin Gogolla,et al.  Transforming Conceptual Data Models into an Object Model , 1992, ER.

[35]  Mary E. S. Loomis Hitting the relational wall , 1994 .

[36]  Gottfried Vossen,et al.  Transforming Relational Database Schemas into Object-Oriented Schemas according to ODMG-93 , 1995, DOOD.

[37]  James E. Rumbaugh,et al.  An object-oriented relational database , 1990, CACM.