|
Home | Résumé | Courses | Contact | Useful Links | Favorite Links | USC - Homepage |
Database Systems Design and Development - (INFS428) - Lectures
Lecture 2 - Version 1.1.0
The Importance of Data Models
• Data model– Relatively simple representation, usually graphical, of complex real-world data structures– Communications tool to facilitate interaction among the designer, the applications programmer, and the end user• Good database design uses an appropriate data model as its foundation
Importance of Data Modeling
• End-users have different views and needs for data
• Data model organizes data for various users
Data Model Basic Building Blocks
• Entity is anything about which data are to be collected and stored• Attribute is a characteristic of an entity• Relationship describes an association among (two or more) entities– One-to-many (1:M) relationship– Many-to-many (M:N or M:M) relationship– One-to-one (1:1) relationship
Business Rules
• Must brief, precise, and unambiguous description of a policy, procedure, or principle within a specific organization’s environment• Apply to any organization that stores and uses data to generate information• Describe operations that help to create and enforce actions within that organization’s environment
• Must be rendered in writing• Must be kept up to date• Sometimes are external to the organization (e.g.: army)• Must be easy to understand and widely disseminated• Describe characteristics of the data as viewed by the company
Sources of Business Rules
• Company managers• Policy makers• Department managers• Written documentation– Procedures– Standards– Operations manuals• Direct interviews with end users
Importance of Business Rules
• Promote creation of an accurate data model• Standardize company’s view of data• Constitute a communications tool between users and designers• Allow designer to understand the nature, role, and scope of data• Allow designer to understand business processes• Allow designer to develop appropriate relationship participation rules and constraints
The Evolution of Data Models
• Hierarchical• Network• Relational• Entity relationship• Object oriented
Hierarchical Structure—Characteristics
• Each parent can have many children• Each child has only one parent• Tree is defined by path that traces parent segments to child segments, beginning from the left
The Hierarchical Model
• Advantages– Conceptual simplicity– Database security & integrity– Data independence– Efficiency
• Disadvantages– Complex implementation (limitations)– Difficult to manage– Complex applications programming and use– Lack of standards
The Network Model
• Created to– Represent complex data relationships more effectively– Improve database performance & standards• Ruled by:– Conference on Data Systems Languages (CODASYL)– American National Standards Institute (ANSI)– Database Task Group (DBTG)
Crucial Database Components
• Schema– Conceptual organization of entire database as viewed by the database administrator• Subschema– Defines database portion “seen” by the application programs that actually produce the desired information from data contained within the
database• Data Management Language (DML)– Define data characteristics and data structure in order to manipulate the data
Data Management Language Components
• Schema Data Definition Language (DDL)– Enables database administrator to define schema components• Subschema DDL– Allows application programs to define database components that will be used• DML– Manipulates database contents
Network Model—Basic Structure
• Resembles hierarchical model• Collection of records in 1:M relationships• Set– Relationship between the components– Composed of at least two record types• Owner– Equivalent to the hierarchical model’s parent• Member– Equivalent to the hierarchical model’s child
The Relational Model
• Developed by Codd (IBM) in 1970• Considered ingenious but impractical in 1970• Conceptually simple• Computers lacked power to implement the relational model• Today, microcomputers can run sophisticated relational database software
The Relational Model—Basic Structure
• Name: Relational Database Management System (RDBMS)• Performs same basic functions provided by hierarchical and network DBMS systems, plus other functions• Most important advantage of the RDBMS is its ability to let the user/designer operate in a human logical environment
• Table (relations)– Matrix consisting of a series of row/column intersections– Related to each other by sharing a common entity characteristic• Relational schema– Visual representation of relational database’s entities, attributes within those entities, and relationships between those entities
Relational Table
• Stores a collection of related entities– Resembles a file• Relational table is purely logical structure– How data are physically stored in the database is of no concern to the user or the designer– This property became the source of a real database revolution
The Entity Relationship Model - Basic Structure
• Entity relationship diagram (ERD)– Uses graphic representations to model database components– Entity is mapped to a relational table• Entity instance (or occurrence) is row in table• Entity set is collection of like entities• Connectivity labels types of relationships– Diamond connected to related entities through a relationship line (See Figure 2.6)
The Object Oriented Model
• Semantic data model (SDM) developed by Hammer and McLeod in 1981• Modeled both data and their relationships in a single structure known as an object• Basis of object oriented data model (OODM)• OODM becomes the basis for the object oriented database management system (OODBMS)• Object is described by its factual content– Like relational model’s entity• Includes information about relationships between facts within object and relationships with other objects– Unlike relational model’s entity• Subsequent OODM development allowed an object to also contain operations• Object becomes basic building block for autonomous structures
Object Oriented Data Model - Basic Structure
• Object: abstraction of a real-world entity• Attributes describe the properties of an object• Objects that share similar characteristics are grouped in classes• Classes are organized in a class hierarchy• Inheritance is the ability of an object within the class hierarchy to inherit the attributes and methods of classes above it
The Object Oriented Model
• Advantages– Adds semantic content– Visual presentation includes semantic content– Database integrity– Both structural and data independence
• Disadvantages– Complex navigational data access– Steep learning curve– High system overhead slows transactions
Database Models and the Internet
• Characteristics of successful “Internet age” databases– Flexible, efficient, and secure Internet access that is easily used, developed, and supported– Support for complex data types and relationships– Seamless interfacing with multiple data sources and structures– Relative conceptual simplicity to make database design and implementation less cumbersome– An abundance of available database design, implementation, and application development tools– A powerful DBMS graphical user interface (GUI) to help make the DBA’s job easier• American National Standards Institute/Standards Planning and Requirements Committee (ANSI/SPARC)– Classified data models according to their degree of abstraction (1970s):• Conceptual• External• Internal
The Conceptual Model
• Represents global view of the database• Enterprise-wide representation of data as viewed by high-level managers• Basis for identification and description of main data objects, avoiding details• Most widely used conceptual model is the entity relationship (E-R) model
The Internal Model of E-R
• Representation of the database as “seen” by the DBMS• Adapts the conceptual model to the DBMS• Software dependent• Hardware independent
The External Model of E-R
• End users’ view of the data environment• Requires that the modeler subdivide set of requirements and constraints into functional modules that can be examined within the framework of
their external models• Good design should:– Consider such relationships between views– Provide programmers with a set of restrictions that govern common entities
Source: Rob and Coronel Database Systems: Design, Implementation and Management – 6th Edition Course Technology
|
Home | Résumé | Courses | Contact | Useful Links | Favorite Links | USC - Homepage |