-
Essay / Relational Database Model - 931
Comparison and Contrast of Relational Database Model and OO ModelThe relational database model is based on tables or relationships. In this model, the physical implementation of the database is removed from the user. Users query the database using a high-level query language, such as SQL. Relationships consist of columns whose headers indicate the attribute represented by that column. Tables have key fields that can be used to identify unique records. Keys connect tables together. The rows in the relationship are also called tuples, and there is a tuple component for each attribute – or column – in that relationship. A relationship or table name, along with the attributes of that relationship, constitute the relational schema. Relational database models are server-centric. When designing a relational database, you must create a table for each entity type, choose or invent a primary key for each table; add foreign keys to represent one-to-many relationships; create new tables to represent many-to-many relationships; define referential integrity constraints; evaluate the quality of the diagram and make the necessary improvements; and choose the appropriate data types and value restrictions for each field (if necessary). The real power of relational systems lies in the ability to perform complex queries on data. Relational systems are well understood and can be highly optimized in terms of queries, scalability, and storage. There is uniqueness of table rows and primary keys, as well as ease of implementing future changes to the data model: flexibility and maintainability. To create an effective and efficient application in the relational model, the developer must have in-depth knowledge of the tables and all the relationships between them. Object-oriented database management systems are considered an alternative approach to meet the requirements of more complex data types. The need to handle complex object-centric data as the primary data element is the driving force behind object-oriented database models. These systems attempt to extend object-oriented programming languages, techniques, and tools to provide a means to support data management tasks. Object-oriented models are customer-centric. Object-oriented databases use attributes containing object identifiers to find objects related to other objects. When designing an object-oriented model, you must first determine which classes require persistent storage; define persistent classes; represent relationships between persistent classes; and choose the appropriate data types and value restrictions for each field. Object-oriented database models approach in the opposite direction (a programming language itself) to solve the problem of handling complex data types..