Introduction to the Other Databases

Slides:



Advertisements
Similar presentations
OO databases 1 Object Oriented databases. OO databases 2 Developing OODBMS - motivation motivation more and more application areas require systems that.
Advertisements

Database Systems: Design, Implementation, and Management Ninth Edition
Database Systems: Design, Implementation, and Management Tenth Edition
Introduction to Databases
Object-Oriented Databases v OO systems associated with – graphical user interface (GUI) – powerful modeling techniques – advanced data management capabilities.
Chapter Object-Oriented Practices. Agenda Object-Oriented Concepts Terminology Object-Oriented Modeling Tips Object-Oriented Data Models and DBMSs.
OBJECTS Object Oriented ???????. OBJECTS Object-Oriented n OO convenient label for a collection of interconnected ideas n OO approach views computer.
File Systems and Databases
Chapter 14 (Web): Object-Oriented Data Modeling
OBJECT ORIENTED ANALYSIS & DESIGN Vassilka Kirova Department of Computer & Information Science NJIT.
Chapter 2 Database Environment. Agenda Three-Level ANSI-SPARC Architecture Database Languages Data Models Functions of DBMS Components of DBMS Teleprocessing.
Object-Oriented Databases
File Systems and Databases Hachim Haddouti
“DOK 322 DBMS” Y.T. Database Design Hacettepe University Department of Information Management DOK 322: Database Management Systems.
Database Systems: Design, Implementation, and Management Eighth Edition Chapter 2 Data Models Database Systems, 8th Edition 1.
Object Oriented Databases - Overview
Object-Oriented Methods: Database Technology An introduction.
RIZWAN REHMAN, CCS, DU. Advantages of ORDBMSs  The main advantages of extending the relational data model come from reuse and sharing.  Reuse comes.
Chapter 4 Object and Object-Relational Databases (Part ½: Object-Oriented Concepts) Lecturer: H.Ben Othmen Department of Computer Science, Umm Al-Qura.
Chapter 14: Object-Oriented Data Modeling
LECTURE 2 DATABASE SYSTEM CONCEPTS AND ARCHITECTURE.
Chapter 14: Object-Oriented Data Modeling
IST Databases and DBMSs Todd S. Bacastow January 2005.
Introduction to Data bases concepts
Introduction To System Analysis and design
2 1 Chapter 2 Data Model Database Systems: Design, Implementation, and Management, Sixth Edition, Rob and Coronel.
Chapter 24 Introduction to Object DBMSs Prepared by Kai Huang CS157B Prof Sin-Min Lee.
Information storage: Introduction of database 10/7/2004 Xiangming Mu.
Week 1 Lecture MSCD 600 Database Architecture Samuel ConnSamuel Conn, Asst. Professor Suggestions for using the Lecture Slides.
DBMS Lecture 9  Object Database Management Group –12 Rules for an OODBMS –Components of the ODMG standard  OODBMS Object Model Schema  OO Data Model.
11 1 Object oriented DB (not in book) Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel Learning objectives: What.
2 1 Chapter 2 Data Models Database Systems: Design, Implementation, and Management, Seventh Edition, Rob and Coronel.
Database Design - Lecture 2
Database Systems: Design, Implementation, and Management Ninth Edition
Object-Oriented Database Management Systems (ODBMS)
Copyright 2002 Prentice-Hall, Inc. Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey F. George Joseph S. Valacich Chapter 20 Object-Oriented.
Database Management System Prepared by Dr. Ahmed El-Ragal Reviewed & Presented By Mr. Mahmoud Rafeek Alfarra College Of Science & Technology Khan younis.
Object Orientation and Its Benefits
11 Chapter 11 Object-Oriented Databases Database Systems: Design, Implementation, and Management 4th Edition Peter Rob & Carlos Coronel.
11 1 Chapter 11 Object Oriented Databases Database Systems: Design, Implementation, and Management, Sixth Edition, Rob and Coronel.
Lecture2: Database Environment Prepared by L. Nouf Almujally & Aisha AlArfaj 1 Ref. Chapter2 College of Computer and Information Sciences - Information.
1 Chapter 1 Introduction. 2 Introduction n Definition A database management system (DBMS) is a general-purpose software system that facilitates the process.
Lecture2: Database Environment Prepared by L. Nouf Almujally 1 Ref. Chapter2 Lecture2.
CHAPTER 13 (ONLINE): OBJECT-ORIENTED DATA MODELING © 2013 Pearson Education, Inc. Publishing as Prentice Hall 1 Modern Database Management 11 th Edition.
© 2011 Pearson Education, Inc. Publishing as Prentice Hall 1 Chapter 13 (Online): Object-Oriented Data Modeling Modern Database Management 10 th Edition.
CHAPTER 13: OBJECT-ORIENTED DATA MODELING (OVERVIEW) © 2013 Pearson Education, Inc. Publishing as Prentice Hall 1 Modern Database Management 11 th Edition.
Lecture # 3 & 4 Chapter # 2 Database System Concepts and Architecture Muhammad Emran Database Systems 1.
DataBase Management System What is DBMS Purpose of DBMS Data Abstraction Data Definition Language Data Manipulation Language Data Models Data Keys Relationships.
1 CS457 Object-Oriented Databases Chapters as reference.
ITEC 3220A Using and Designing Database Systems Instructor: Prof Z. Yang Course Website: 3220a.htm
CIS/SUSL1 Fundamentals of DBMS S.V. Priyan Head/Department of Computing & Information Systems.
ITEC 3220A Using and Designing Database Systems Instructor: Gordon Turpin Course Website: Office: CSEB3020.
Object Oriented Database By Ashish Kaul References from Professor Lee’s presentations and the Web.
11 Chapter 11 Object-Oriented Databases Database Systems: Design, Implementation, and Management 4th Edition Peter Rob & Carlos Coronel.
Chapter 20 Concepts for Object-Oriented Databases Copyright © 2004 Pearson Education, Inc.
Copyright © 2016 Ramez Elmasri and Shamkant B. Navathe Chapter 12 Outline Overview of Object Database Concepts Object-Relational Features Object Database.
1 10 Systems Analysis and Design in a Changing World, 2 nd Edition, Satzinger, Jackson, & Burd Chapter 10 Designing Databases.
Faeez, Franz & Syamim.   Database – collection of persistent data  Database Management System (DBMS) – software system that supports creation, population,
Data Models. 2 The Importance of Data Models Data models –Relatively simple representations, usually graphical, of complex real-world data structures.
1 © 2013 Cengage Learning. All Rights Reserved. This edition is intended for use outside of the U.S. only, with content that may be different from the.
1 Management Information Systems M Agung Ali Fikri, SE. MM.
Introduction: Databases and Database Systems Lecture # 1 June 19,2012 National University of Computer and Emerging Sciences.
Object-Oriented Database Management System (ODBMS)
Databases and Database Management Systems Chapter 9
Chapter 12 Outline Overview of Object Database Concepts
Advanced Database Models
File Systems and Databases
Data Model.
ITEC 3220A Using and Designing Database Systems
Presentation transcript:

Introduction to the Other Databases Unit - 4 Introduction to the Other Databases

Object oriented database System

Introduction :- The hierarchical model was replaced by network model because it becomes much easier to represent the complex many-to-many relationship. In turn the relational model offered several advantages over the hierarchical and network models through its simpler data representation. Thereafter, Entity-Relationship (E-R) model was introduce for an easy to use graphical data representation. Because of more indicate real-word problems were modeled, a need for different data model to closely represent the real-word object. Thus attempt was made and Semantic Data Model (SDM) was develop to capture mode meaning from real-word object.

Semantics in Data Model Hierarchical Data Model Network Data Model Relational Data Model Entity-Relationship (E-R) Data Model Semantic Data Model Object-Oriented Data Model (OODM) Object-Relational Data Model (ORDM) Semantics in Data Model Physical Level Dependency Difficult to represent (N:M) relationship Access path predefined Set oriented Access Weak Semantic Easy to Understand More Semantic More Semantic in Data Model Support for Complex Object Inheritance

SDM introduce the concept of Class, Inheritance and so on SDM introduce the concept of Class, Inheritance and so on. This help to model the real-word object more objectively. In response to increasing complexity of database applications, following two new data models were introduced Object-Oriented Data Model (OODM) Object-Relational Data Model (ORDM) also called as Extended-Relational Data Model (ERDM) OODMs and ORDMs represent third generation DBMSs. OODMs are logical data model that capture the semantics of objects supported in Object-Oriented Programming. OODMs has adopted many of the concepts that were originally for Object-Oriented Programming Languages.

An Object-Oriented Database (OODB) is a persistence and sharable collection of Objects defined by an OODM. OODB can extend the existence of an object so that they are stored permanently. Hence, the object can be retrieve later and shared by other programs. The OODBs store persistent object permanently on secondary storage disk and allow the sharing of these among multiple programs and applications.

Characteristics of OODBs :- Maintain the direct correspondence between real-word and database objects so that objects do not loose their integrity and identity. It provides an unique system generated Object Identifier (OID) for each object so that an object can easily be identified and operated upon. This is in contrast in relational model each relation has a primary key attribute whose values identifies each tuple uniquely. OODBs are extensible, that is, capable of defining new data type as well as the operations to be performed on them. Support Encapsulation, that is, the data representation and the methods implementations are hidden from external entities. Exhibit inheritance, that is, an object inherites the properties of other objects.

Object-Oriented Data Model (OODM) Traditional Database System Persistence Sharing Transaction Concurrency Control Recovery Control Security Integrity Querying Special Requirements Versioning Schema Evaluation Object-Oriented Data Model (OODM) Object-Oriented Programming Languages Object Identity Encapsulation Inheritance Types, Class, Methods Complex Objects Polymorphism Extensibility Semantic Data Model (SDM) Generalization Aggregation

Comparison of OODM and E-R Model The main difference between OODM and conceptual data modeling (CDM), which is based on an Entity-Relationship (E-R) modeling is the encapsulation of both state and behavior is an object in OODM. Where as CDM capture only state and has no knowledge of behavior. CDM has no concept of Encapsulation.

SN OO Data Model E-R Data Model 1. Type Entity definition 2. Object Entity 3. Class Entity Set 4. Instance Variables Attributes 5. Object Identifier (OID) No Corresponding Concept 6. Methods (Message or Operations) 7. Class Structure E-R Diagram 8. Inheritance 9. Encapsulation 10. Association Relationship

Concept of Object-Oriented Database (OODM)

An Object-Orientation is a set of design and development principles based on conceptually autonomous computer structure known as Object. Each object represents he real-word entity with the ability to interact with itself and with other object. We live in a word of objects. In an Object-Oriented System the problem domain is characterized as a set of objects that has specific attributes and behaviors. The objects are manipulated as a collection of functions called methods, operations or services and communicate with one other through a messaging protocol. Objects are categorized into classes and subclasses. Object-Oriented concepts stem from Object-Oriented Programming Languages (OOPLs), which was developed as an alternative to traditional programming methods.

Objects :- An object is an abstract representation of real-word entity that has an unique identity, properties and ability to interact with other objects and itself. It is an uniquely identified entity that contains both the attributes that describe the state of real-word and a set of actions and services. Thus the definition of object encompasses the description of attributes, behaviors, identity, operations and messages. An object encapsulates both the data and the processes that is applied to the data. An object has two components : State / Values. Behavior / Operations.

Object Names Object : Student Object : Knife Object : Chair Object : Frame Name Price Age Size Dimension Length City Model Weight Height Subject Sharpness Location Style Gender Cut Color Store Chop Buy Hang Print Sell Update Move Attributes Services or Actions

Object Identity :- An object has an unique identity, which is represented by an Object Identifier (OID). OODB system provides an unique OID to each independent object stored in the database. No two objects can shared the same OID. The OID is assigned by the system and does not depend ion the object’s attribute value. The value of an OID is not visible to an external user, but it is used internally by the system to identify each object uniquely.

OID has the following Characteristics :- It is system-generated. It is unique to the object. It can not be changed. It can never be alter during its lifetime. It can never be deleted. It can be deleted only if the object is deleted. It can never be reused. It is independent of the value of its attributes. It is invisible to the user. The OID should not be confused with the primary key of relational database. In contrast to the OID, a primary key of relational database is user defined values of selected attributes and can be changed at any time.

Object Attributes :- In an OO environment, objects are described by their attributes, known as instance variables. Each attribute has an Unique name and a data type associated with it. Traditional data types such as real, integer, string and so on can also be used. Attributes also have a domain. The domain logically groups and describe the set of all possible values that an attributes can have.

Object : Student Attributes Object : Chair Name Abhishek Price 5000 Rs/- Age 23 Dimension 3 Ft GPS 9.5 Weight 5 Kg Subject Computer Engineer Location Office Gender Male Color Black define type Student; tuple( Name: string; Age: float; GPA: float; Subject: string; Gender: string; );

Classes :- A class is a collection of similar objects with shared structure (attributes) and behavior (methods). It contains the description of the data structure and the method implementation details for the objects in the class. Therefore all objects in the class shared same structure and response to the same messages. Thus a class has a class name, set of attributes, and a set of services or actions. Each object in a class is known as a Object Instance or Class Instance. There are two implicit services or action functions defined for each class namely GET <attribute >and PUT <attribute>.

The GET function determine the value of attribute associated with it and the PUT function assign the value of the attribute to the attribute name. In next example the class named ‘Furniture’ has two instances named ‘Chair’ and ‘ Table’. Chair and Table are the members of the main class Furniture so that they are inherits all attributes defined for the class.

Class : Furniture Price Dimension Location Color Weight Buy Sell Move Object : Table 10000 5 Ft Office Ivory 7 Kg Buy Sell Move Object : Chair 5000 3 Ft Office Black 5 Kg Buy Sell Move

Class : Student Name Age City Subject Store Print Update Object: Student1 Raj 23 Rajkot Computer Engineer Store Print Update Object: Student2 Ketan 24 Baroda Computer Science Store Print Update Object: Student3 Shital 21 Surat Mechanical Engineer Store Print Update

define type Student; tuple ( Name: string; Age: float; City: string; Subject: string; ); operations store: string; print: Student; update: Student; end Student;

Relationship / Association among Objects :- Two objects can be associated with each others by a given relation. An association between classes may be a one-to-one (1:1), one-to-many (1:m) or many-to-many (n:m) association. Graphical representation of association : It is shown by a line connecting the associated classes or objects together. For association that are not one-to-one (1:1), a multiplicity number or a range number can be introduce written bellow the association line. the name of the association can be written under the association line.

Class : Student Roll# Name Rank Major Subject GPA Out-to-Roster Class : Course Department Course# Faculty Time Building Out-to-Roster Enrolled 1 N The above figure shows the relationship between two classes ‘Student’ and ‘Course’ is called ‘Enrolled’ It one-to-many association that means a student may be enrolled in zero or more courses.

Class : Student Roll# Name Rank Major Subject GPA Check-Permission * Class : Advisor Department SS# Name Office Phone# * ADVICE N 1 ADVISOR-OF N 1 The association between Student and Advisor is called Advice and is Many-to-One relationship. The association between Advisor And Student is called Advisor-of and is One-to –Many Relationship.

Advantages of OODBMSs :- Enriched modeling capabilities :- It allow the real-world to be more closely. Reduced redundancy and increase extensibility :- It allow new data types to be built from existing types. It has a ability to factor out common properties of several classes and form them into superclass that can be shared with subclass. Removal of impedance mismatch :- It provides single language interface between the data manipulation language and the programming language.

More expressive query language :- It provides navigational access from one object to the next for data access in contrast to the associative SQL. Support for schema evaluation :- In OODBMS schema evaluation is more feasible. Generalization and Inheritance allow the schema to be better structure and capture more of the semantics. Support for long duration transaction :- OODBMS use different protocol to handle the type of long-duration transaction. Applicability to advance application :- More suitable for advance database applications such as, computer-aided design (CAD), office information services (OIS), computer-aided software engineering (CASE).

Disadvantages of OODBMSs :- Lack of Universal Data Model. Lack of experience. Lack of standards. Competition posed by RDBMS products. Query optimization compromises encapsulation. Locking of object level may impact performance. Complexity due to increase functionality provided by an OODBMS. Lack of support for view. Lack of support for security.