ch09

40
Chapter 9 Database Management Systems

Upload: sampp-capital-iq

Post on 12-Nov-2014

798 views

Category:

Technology


0 download

DESCRIPTION

 

TRANSCRIPT

Page 1: Ch09

Chapter 9

Database Management

Systems

Page 2: Ch09

Objectives for Chapter 9• Operational problems inherent in the flat file approach to

data management that gave rise to the database concept

• The relationships among the defining elements of the database environment

• The anomalies caused by unnormalized databases and the need for data normalization

• The stages in database design including entity identification, data modeling, constructing the physical database, and preparing user views

• The operational features of distributed databases and recognize the issues that need to be considered in deciding on a particular database configuration

Page 3: Ch09

Flat-File Versus Database Environments

• Computer processing involves two components: data and instructions (programs).

• Conceptually, there are two methods for designing the interface between program instructions and data: – file-oriented processing: A specific data file was created for

each application – data-oriented processing: Create a single data repository to

support numerous applications.• Disadvantages of file-oriented processing include redundant

data and programs and varying formats for storing the redundant data.

• The format for similar fields may vary because the programmer used inconsistent field formats.

Page 4: Ch09

Flat-File Environment

Program 1

Program 2

Program 3

A,B,C

X,B,Y

L,B,M

User 2Transactions

User 1Transactions

User 3Transactions

Data

Page 5: Ch09

Data Redundancy & Flat-File Problems

• Data Storage - creates excessive storage costs of paper documents and/or magnetic form

• Data Updating - any changes or additions must be performed multiple times

• Currency of Information - potential problem of failing to update all affected files

• Task-Data Dependency - user’s inability to obtain additional information as his or her needs change

Page 6: Ch09

Program 1

Program 2

Program 3

User 2Transactions

User 1Transactions

User 3Transactions

Database

DBMS

A,B,C,X,Y,L,M

Database Approach

Page 7: Ch09

Advantages of the Database Approach

Data sharing/centralize database resolves flat-file problems:

No data redundancy - Data is stored only once, eliminating data redundancy and reducing storage costs.

Single update - Because data is in only one place, it requires only a single update procedure, reducing the time and cost of keeping the database current.

Current values - A change to the database made by any user yields current data values for all other users.

• Task-data independence - As users’ information needs expand beyond their immediate domain, the new needs can be more easily satisfied than under the flat-file approach.

Page 8: Ch09

Disadvantages of the Database Approach

• Can be costly to implement– additional hardware, software, storage, and

network resources are required

• Can only run in certain operating environments – may make it unsuitable for some system

configurations

• Because it is so different from the file-oriented approach, the database approach requires training users– may be inertia or resistance

Page 9: Ch09

Elements of the Database Approach

System DevelopmentProcess

Database Administrator

USERS

DBMS

HostOperatingSystem

PhysicalDatabase

UserPrograms

UserPrograms

UserPrograms

Applications

DataDefinitionLanguage

DataManipulationLanguage

QueryLanguage

User Queries

Transactions

Transactions

Transactions

Sys

tem

Req

ue

sts

Page 10: Ch09

DBMS Features• User Programs - makes the presence of the DBMS

transparent to the user• Direct Query - allows authorized users to access

data without programming• Application Development - user created

applications• Backup and Recovery - copies database• Database Usage Reporting - captures statistics on

database usage (who, when, etc.)• Database Access - authorizes access to sections of

the database

Page 11: Ch09

Internal Controls and DBMS

• The purpose of the DBMS is to provide controlled access to the database.

• The DBMS is a special software system programmed to know which data elements each user is authorized to access and deny unauthorized requests of data.

Page 12: Ch09

Data Definition Language (DDL)

• DDL is a programming language used to define the database to the DBMS.

• The DDL identifies the names and the relationship of all data elements, records, and files that constitute the database.

• Viewing Levels:– internal view - physical arrangement of records

(1)– conceptual view - representation of database (1)– user view - the portion of the database each user

views (many)

Page 13: Ch09

Data Manipulation Language (DML)

• DML is the proprietary programming language that a particular DBMS uses to retrieve, process, and store data.

• Entire user programs may be written in the DML, or selected DML commands can be inserted into universal programs, such as COBOL and FORTRAN.

Page 14: Ch09

Query Language

• The query capability permits end users and professional programmers to access data in the database without the need for conventional programs.

• ANSI’s Structured Query Language (SQL) is a fourth-generation language that has emerged as the standard query language.

Page 15: Ch09

Functions of the DBA

Page 16: Ch09

Logical Data Structures• A particular method used to organize records in a

database is called the database’s structure.• The objective is to develop this structure

efficiently so that data can be accessed quickly and easily.

• Four types of structures are: – hierarchical (aka the tree structure)– network– relational– object-oriented

Page 17: Ch09

The Relational Model

• The relational model portrays data in the form of two dimensional tables:– relation - the database table– attributes (data elements) - form columns– tuples (records) - form rows– data - the intersection of rows and columns

Page 18: Ch09

RESTRICT - filtering out rows, such as the yellow

PROJECT - filtering out columns,such as the green

X1 X1

X2 X2

X3 X3

Y1

Y1

Y1 Y1

Y1

Y2 Y2 Y2

Y3

Z1 Z1

Z2 Z2

Z3 Z1

JOIN

Page 19: Ch09

Properly Designed Relational Tables

• No repeating values - All occurrences at the intersection of a row and column are a single value.

• The attribute values in any column must all be of the same class.

• Each column in a given table must be uniquely named.

• Each row in the table must be unique in at least one attribute, which is the primary key.

Page 20: Ch09

Crow’s Feet Cardinalities

(1:0,1)

(1:1)

(1:0,M)

(1:M)

(M:M)

Page 21: Ch09

Relational Model Data Linkages (>1 table)

• No explicit pointers are present. The data are viewed as a collection of independent tables.

• Relations are formed by an attribute that is common to both tables in the relation.

• Assignment of foreign keys:– if 1 to 1 association, either of the table’s primary key may

be the foreign key.– if 1 to many association, the primary key on one of the

sides is embedded as the foreign key on the other side.– if many to many association, may embed foreign keys or

create a separate linking table.

Page 22: Ch09

Three Types of Anomalies

• Insertion Anomaly: A new item cannot be added to the table until at least one entity uses a particular attribute item.

• Deletion Anomaly: If an attribute item used by only one entity is deleted, all information about that attribute item is lost.

• Update Anomaly: A modification on an attribute must be made in each of the rows in which the attribute appears.

• Anomalies can be corrected by creating relational tables.

Page 23: Ch09

Advantages of Relational Tables

• Removes all three anomalies

• Various items of interest (customers, inventory, sales) are stored in separate tables.

• Space is used efficiently.

• Very flexible. Users can form ad hoc relationships.

Page 24: Ch09

The Normalization Process

• A process which systematically splits unnormalized complex tables into smaller tables that meet two conditions:– all nonkey (secondary) attributes in the table

are dependent on the primary key– all nonkey attributes are independent of the

other nonkey attributes

• When unnormalized tables are split and reduced to third normal form, they must then be linked together by foreign keys.

Page 25: Ch09

Steps in NormalizationTable withrepeating groups

First normalform 1NF

Second normalform 2NF

Third normalform 3NF

Higher normalforms

Removerepeating

groups

Remove partial

dependencies

Removetransitive

dependencies

Removeremaininganomalies

Page 26: Ch09

Accountants and Data Normalization

• The update anomaly can generate conflicting and obsolete database values.

• The insertion anomaly can result in unrecorded transactions and incomplete audit trails.

• The deletion anomaly can cause the loss of accounting records and the destruction of audit trails.

• Accountants should have an understanding of the data normalization process and be able to determine whether a database is properly normalized.

Page 27: Ch09

Six Phases in Designing Relational Databases

1. Identify entities• identify the primary entities of the

organization• construct a data model of their

relationships2. Construct a data model showing entity

associations• determine the associations between

entities• model associations into an ER diagram

Page 28: Ch09

Six Phases in Designing Relational Databases

3. Add primary keys and attributes to the model

• assign primary keys to all entities in the model to uniquely identify records

• every attribute should appear in one or more user views

4. Normalize the data model and add foreign keys

• remove repeating groups, partial and transitive dependencies

• assign foreign keys to be able to link tables

Page 29: Ch09

Six Phases in Designing Relational Databases

5. Construct the physical database• create physical tables• populate tables with data

6. Prepare the user views• normalized tables should support all

required views of system users• user views restrict users from have

access to unauthorized data

Page 30: Ch09

Distributed Data Processing

Site C Site BSite A

Centralized Database

Central Site

Page 31: Ch09

Distributed Data Processing

• DP is organized around several information processing units (IPUs) distributed throughout the organization and placed under the control of the end users.

• DDP does not mean decentralization– IPUs are connected to

one another and coordinated

Page 32: Ch09

Potential Advantages of DDP

• Cost reductions in hardware and data entry tasks

• Improved cost control responsibility• Improved user satisfaction since control

is closer to the user level• Backup of data can be improved through

the use of multiple data storage sites

Page 33: Ch09

Potential Disadvantages of DDP

• Loss of control

• Mismanagement of organization-wide resources

• Hardware and software incompatibility

• Redundant tasks and data

• Consolidating incompatible tasks

• Difficulty attracting qualified personnel

• Lack of standards

Page 34: Ch09

• The data is retained in a central location.

• Remote IPUs send requests for data.

• Central site services the needs of the remote IPUs.

• The actual processing of the data is performed at the remote IPU.

Centralized Databases in DDP Environment

Page 35: Ch09

Data Currency

• Occurs in DDP with a centralized database

• During transaction processing, the data will temporarily be inconsistent as a record is being read and updated.

• Database lockout procedures are necessary to keep IPUs from reading inconsistent data and from writing over a transaction being written by another IPU.

Page 36: Ch09

Distributed Databases: Partitioning

• Splits the central database into segments that are distributed to their primary users

• Advantages:– users’ control is increased by having data stored

at local sites– transaction processing response time is improved– the volume of transmitted data between IPUs is

reduced– reduces the potential data loss from a disaster

Page 37: Ch09

The Deadlock Phenomenon

• Especially a problem with partitioned databases

• Occurs when multiple sites lock each other out of data that they are currently using – One site needs data locked by another site.

• Special software is needed to analyze and resolve conflicts. – Transactions may be terminated and have to be

restarted.

Page 38: Ch09

The Deadlock Phenomenon

A,BE, F

C,D

Locked A, waiting for C

Locked C, waiting for E

Locked E, waiting for A

Page 39: Ch09

Distributed Databases: Replication

• The duplication of the entire database for multiple IPUs

• This method is effective for situations with a high degree of data sharing, but no primary user, and supports read-only queries.

• The data traffic between sites is reduced considerably.

Page 40: Ch09

Concurrency Problems and Control Issues

• Database concurrency is the presence of complete and accurate data at all IPU sites. With replicated databases, maintaining current data at all locations is a difficult task.

• Time stamping may be used to serialize transactions and to prevent and resolve any potential conflicts created by updating data at various IPUs.