Data Models 12052016
Data Models 12052016
14-1 INTRODUCTION
Definition:
A database is a collection of related, logically coherent
data used by the application
programs in an organization.
14.3
Advantages of databases
Less redundancy
In a flat-file system there is a lot of redundancy. For
example, in the flat file system for a university, the names of
professors and students are stored in more than one file.
Inconsistency avoidance
If the same piece of information is stored in more than one
place, then any changes in the data need to occur in all places
that data is stored.
14.4
Efficiency
A database is usually more efficient that a flat file system,
because a piece of information is stored in fewer locations.
Data integrity
In a database system it is easier to maintain data integrity
(see Chapter 16), because a piece of data is stored in fewer
locations.
Confidentiality
It is easier to maintain the confidentiality of the information
if the storage of data is centralized in one location.
14.5
14-2 DATABASE MANAGEMENT SYSTEMS
14.6
Figure 14.1 DBMS components
Hardware
The hardware is the physical computer system that allows
access to data.
Software
The software is the actual program that allows users to
access, maintain and update data. In addition, the software
controls which user can access which parts of the data in the
database.
Confidentiality
The data in a database is stored physically on the storage
devices. In a database, data is a separate entity from the
software that accesses it.
14.7
Users
In a DBMS, the term users has a broad meaning. We can
divide users into two categories: end users and application
programs.
Procedures
The last component of a DBMS is a set of procedures or
rules that should be clearly defined and followed by the users
of the database.
14.8
14-3 DATABASE ARCHITECTURE
14.9
Figure 14.2 Database architecture
14.10
Internal level
The external level interacts directly with the user (end users
or application programs). It changes the data coming from
the conceptual level to a format and view that is familiar to
the users.
14.12
DATA MODELS
Data model tells how the logical structure of a
database is modeled. Data Models are
fundamental entities to introduce abstraction in
DBMS. Data models define how data is connected
to each other and how it will be processed and
stored inside the system.
14-4 DATABASE MODELS
14.14
Hierarchical Model
• In a hierarchical model data is organized into a tree-like structure implying a
single parent for each record. A sort field keeps sibling records in a particular
order. Hierarchical structures were widely used in the early mainframe database
management systems, such as the Information Management System (IMS) by IBM,
• This structure allows one one-to-many relationship between two types of data.
This structure is very efficient to describe many relationships in the real world;
recipes, table of contents, ordering of paragraphs/verses, any nested and sorted
information.
• This hierarchy is used as the physical order of records in storage. Record access is
done by navigating through the data structure using pointers combined with
sequential accessing. Because of this, the hierarchical structure is inefficient for
certain database operations when a full path (as opposed to upward link and sort
field) is not also included for each record. Such limitations have been
compensated for in later IMS versions by additional logical hierarchies imposed
on the base physical hierarchy.
The hierarchical data model
• The hierarchical data model organizes data in a tree structure. There is a hierarchy
of parent and child data segments. This structure implies that a record can have
repeating information, generally in the child data segments. Data in a series of
records, which have a set of field values attached to it. It collects all the instances
of a specific record together as a record type. These record types are the
equivalent of tables in the relational model, and with the individual records being
the equivalent of rows. To create links between these record types, the
hierarchical model uses Parent Child Relationships. These are a 1:N mapping
between record types. This is done by using trees, like set theory used in the
relational model, "borrowed" from maths. For example, an organization might
store information about an employee, such as name, employee number,
department, salary. The organization might also store information about an
employee's children, such as name and date of birth. The employee and children
data forms a hierarchy, where the employee data represents the parent segment
and the children data represents the child segment. If an employee has three
children, then there would be three child segments associated with one employee
segment. In a hierarchical database the parent-child relationship is one to many.
This restricts a child segment to having only one parent segment. Hierarchical
DBMSs were popular from the late 1960s, with the introduction of IBM's
Information Management System (IMS) DBMS, through the 1970s.
Hierarchical database model
•
Relational Data Model
• (RDBMS - relational database management system) A
database based on the relational model developed by
E.F. Codd. A relational database allows the definition of
data structures, storage and retrieval operations and
integrity constraints. In such a database the data and
relations between them are organised in tables. A table
is a collection of records and each record in a table
contains the same fields.
Properties of Relational Tables:Values Are AtomicEach
Row is UniqueColumn Values Are of the Same KindThe
Sequence of Columns is InsignificantThe Sequence of
Rows is InsignificantEach Column Has a Unique Name
Relational Model
Relational database model
14.28
Relations
14.31
INTRODUCTION TO SQL
Structured Query Language
14.33
Insert
14.37
Figure 14.10 An example of an select operation
Project
14.38
Figure 14.11 An example of a project operation
Join
The union operation takes two relations with the same set of
attributes.
14.40
Figure 14.13 An example of a union operation
Intersection