35
Database Management System Chapter 1 – An Overview

Database Management System Chapter 1 – An Overview

Embed Size (px)

Citation preview

Page 1: Database Management System Chapter 1 – An Overview

Database Management System

Chapter 1 – An Overview

Page 2: Database Management System Chapter 1 – An Overview

THE TRADITIONAL FILE ENVIRONMENT

Class programs Class file

Employee data

Student data

Course data

Registration data

Registrar’s office

Accounts programs Accounts file

Employee data

Student data

Tuition data

Financial aid

Accounting dept.

• Employee data contains information of the instructor who is an employee.• Student data is repeated.

A data file is a collection of logically related records. In a file management environment, eachapplication has a specific data file related to it, containing all the data records needed by theapplication.

Page 3: Database Management System Chapter 1 – An Overview

Program – Data Dependence

Program – Data Dependence is the tight relationship between data stored in various files and the specific programming language used to access or execute them. Every traditional computer program has to describe the input file format with which it works. Program – Data

Dependence leads to the potential for Data redundancy.

Data Redundancy is the presence of duplicate data in multiple data files. Data redundancy occurs when different divisions, functional areas, and groups in an organization independently collect the same piece of data and build separately their own systems with different languages, platforms, and data file format . Data Redundancy leads to the potential for data inconsistency.

Problems with the File processing

Page 4: Database Management System Chapter 1 – An Overview

Data Isolation : File processing can leads to difficulty in accessing data from different applications. (Data can not be shared). With applications uniquely designed and implemented, data are scattered in various files, and files may be in different formats.

Integrity problems : The data values stored in the database must satisfy certain types of consistency constraints. Developers enforce these constraints in the system by adding appropriate code in the various application programs. However, when new constraints are added, it is difficult to change the programs to enforce them.

Security problems: Enforcing security constraints in the application is much more difficult than that of in the database environment. Not every user of the database system should be able to access all the data.

Applications should not have to be developed with regard to how the data are stored. That is, the applications and data in computer systems should be independent - a characteristic called application/data independence.

Page 5: Database Management System Chapter 1 – An Overview

Databases : The modern approach

Class programs Academic info

Student data

Course data

Registration data

Registrar’s office

Accounts programs

Employee data

Team data

Tuition data

Financial aid

Accounting dept.

Sports programs

Athletics dept.

Databasemanagement

system

A database, which is a logical group of related files, can eliminate many of the problems associated with a traditional file environment. With the database approach, all the data aretypically contained in the same storage location, rather than residing in many different files across the organization.

Unlike the traditional approach, in which different programs access the differentdata files, the database is arranged so that one set of software programs (DBMS) providesaccess to all the data.

Page 6: Database Management System Chapter 1 – An Overview

DBMS: Database Management System

DBMS consists of a collection of interrelated data and a set of programs

to access those data. The primary goal of DBMS is to provide an

environment that is both convenient and efficient to use in retrieving

and storing database information. DBMS acts as the interface software

between users and data stored in the database by hiding the detail of

internal

Page 7: Database Management System Chapter 1 – An Overview

ฐานข้�อมู�ลกลาง

มูาตรฐานข้�อมู�ล

คล�งข้�อมู�ล

กรรมวิ�ธี�นำเข้ กรให้ บร�กร

The enterprise system collects data from various key business processes and stores the data in a single comprehensive data repository where they can be used by other parts of the business

Page 8: Database Management System Chapter 1 – An Overview

Locating Data in Databases

A centralized database has all the related files in one physical location.

CentralLocation

Page 9: Database Management System Chapter 1 – An Overview

Locating Data in Databases

A distributed database has complete copies of a database, or portions of a database, in more than one location.

CentralLocation

LocationA

LocationB

LocationC

LocationD

Page 10: Database Management System Chapter 1 – An Overview

There are two types of distributed databases:

• replicated• partitioned

A replicated database has complete copies of the entire database in many locations, primarily to alleviate the single-point-of-failure problemsof a centralized database as well as to increase user access responsiveness.

A partitioned database is subdivided, so that each location has a portion of the entire database (usually the portion that meets users’ local needs).This type of database provides the response speed of localized files without the need to replicate all changes in multiple locations.

Page 11: Database Management System Chapter 1 – An Overview

Databases : The modern approach

Class programs Academic info

Student data

Course data

Registration data

Registrar’s office

Accounts programs

Employee data

Team data

Tuition data

Financial aid

Accounting dept.

Sports programs

Athletics dept.

Databasemanagement

system

A database, which is a logical group of related files, can eliminate many of the problems associated with a traditional file environment. With the database approach, all the data aretypically contained in the same storage location, rather than residing in many different files across the organization.

Unlike the traditional approach, in which different programs access the differentdata files, the database is arranged so that one set of software programs (DBMS) providesaccess to all the data.

Page 12: Database Management System Chapter 1 – An Overview

Abstract View of Data

DBMS provides the ability for many different users to share data and process resources. How can a single, unified database meet the differing requirements of so many users? That is, the system hides certain details of how the data are storedand maintained.

A DBMS minimizes these problems by providing 3 views of the database data:(Since many database-systems users are not computer trained, developers hidethe complexity from users through several levels of abstraction :

A physical view : The lowest level of abstraction describes how the data are actually stored. It deals with the actual, physical arrangement and location of data in the direct access storage devices (DASDs). A logical view The next higher level of abstraction describes what data arestored in the database, and what relationships exist among those data. The logicaldescribes the entire database in terms of a small number of relatively simple structures.(Users may not want to know all the technical details of physical storage.

An external view : The higher level of abstraction describes only part of the entire database. Many users of the database do not need all this information;instead, they need to access only a part of the database.

Page 13: Database Management System Chapter 1 – An Overview

Data Abstraction External View 1

External View 2

External View 3

Conceptual (Logical) Level

Physical Level

Page 14: Database Management System Chapter 1 – An Overview

BillingApplication

Load ResearchApplication

MaintenanceApplication

Billing & ResearchData Model

MaintenanceData Model

Information Services Data Model

Database Management System

ServiceDatabases

Logical User ViewsData elements and relationships needed for Billing, Load Research, or Maintenance processing

Data elements and relationships (the schema) needed for the support of all information services.

Software InterfaceThe DBMS provides access to the information services databases

Physical Data ViewsOrganization and location of data onthe storage media.

Page 15: Database Management System Chapter 1 – An Overview

One strength of a DBMS is that while there is only one physical view of the data, there can be an endless number of different external views - one specifically tailored to each individual user, if necessary.

Data Model Data Model defines how data are conceptually structured.

A collection of conceptual tools for describing data, data relationships, data semantics, and consistency constraints. Examples of data model : hierarchical, network, relational, object-oriented, entity-relation model, object-relational, hypermedia, and multidimensional models.

Page 16: Database Management System Chapter 1 – An Overview

Instance และ SchemaInstance ข้องฐานข้�อมู�ล : เหล�าข้�อมู�ลที่��ถู�ก

จั�ดเก�บในฐานข้�อมู�ลในข้ณะใดข้ณะหน��ง ด�งน� น Instance จั�งเปร�ยบเสมู$อนก�บค�า

ข้องต�วแปรในข้ณะใดข้ณะหน��งในProgramming Language การ

เปล��ยนแปลงข้�อมู�ลในระบบฐานข้�อมู�ล มู�สาเหต& มูาจัากการที่��ข้�อมู�ลมู�การ Insert,

Delete หร$อ Update เก'ดข้� นตลอดเวลา

Schema : เค�าร�าง (โครงสร�าง) ที่��ได�จัาก การออกแบบฐานข้�อมู�ลโดยรวมู เช่�นการ

ก+าหนดว�า ระบบฐานข้�อมู�ลควรประกอบด�วย ไฟล-อะไรบ�าง และไฟล-เหล�าน� นมู�ความูส�มูพั�นธ์-

ก�นอย�างไร แต�ละไฟล-ควรประกอบด�วยฟ0ลด-(fields) อะไรบ�าง

Page 17: Database Management System Chapter 1 – An Overview

Instance and SchemaInstance of Database : The collection of information stored in the database at a particular moment. Instance of Database change over time as information is inserted and deleted.

The concept of instances can be understood by analogy to a program written in a programming language. Each variable has a particular value at any given instant of time.

Schema : The overall design of the database which must be specified as following :

What files are included in a database?

What fields are included in each file?

How those files are related?

A database schema corresponds to the variable declarations in a program.

Page 18: Database Management System Chapter 1 – An Overview

Database Language

A database system provides a Data Definition Language (DDL) to specify the database schema and a Data Manipulation Language (DML) to express database queries and updates.

Data Definition Language (DDL)

A database schema can be specified by a set of definitions expressed by a special language called a Data-Definition Language.DDL defines what types of information are in the database and how they will be structured. The DDL defines each data element as it appears in the database before that data element is translated into the forms required by the applications.

Page 19: Database Management System Chapter 1 – An Overview

Examples of Data Definition Language (DDL)

Database Languages

CREATE TABLE CREATE VIEW CREATE INDEXALTER TABLE DROP VIEW DROP INDEXDROP TABLE

CREATE TABLE S( S# Char(5) Not Null, Sname Char(20) Not Null, Status SmallInt Not Null, City Char(15) Not Null, PRIMARY KEY (S#) );

Page 20: Database Management System Chapter 1 – An Overview

After DDL statement has been interpreted, DBMS generates a special set of tables called the data dictionary or data directory.

A data dictionary contains metadata – that is, data about data. The schema of a table is an example of metadata. A database system consults the data dictionary before reading or modifying actual data.

ผลจัากการคอมูไพัล-ประโยคที่��เข้�ยนด�วย DDL (DDL Interpreter) จัะ ที่+าให�เก'ดตารางที่��จัะจั�ดเก�บในไฟล-ช่น'ดหน��งที่��เร�ยกว�า พัจันาน&กรมูข้�อมู�ล

(Data Dictionary) ซึ่��งเก�บข้�อมู�ลที่��เก��ยวก�บ โครงสร�างที่��ได�จัากการ ออกแบบฐานข้�อมู�ลน� น ๆ และถู�ามู�การเปล��ยนแปลงแก�ไข้ หร$อ เร�ยกใช่�ข้�อมู�ล

DBMS ต�องอาศั�ยข้�อมู�ลข้องโครงสร�างจัากไฟล-น� เสมูอ

The data values stored in the database must satisfy certain consistency constraints. The database systems check these constraints every time the database is updated.

Page 21: Database Management System Chapter 1 – An Overview

Data Manipulation Language (DML)

การใช่�ข้�อมู�ลในระบบฐานข้�อมู�ล อาจัจั+าแนกได�เป5น- การเร�ยกด�ข้�อมู�ล (RetrieveData)- การเพั'�มูข้�อมู�ลใหมู� (Insert Records)- การลบข้�อมู�ลเด'มู (Delete Records)- การเปล��ยนแปลงแก�ไข้ข้�อมู�ลเด'มู (Update Fields)

การใช่�ข้�อมู�ลในระด�บข้องผ��ใช่�น� น สามูารถูกระที่+าได�โดยผ�านที่าง DBMSซึ่��งได�เตร�ย มูภาษาส+าหร�บการใช่�ข้�อมู�ล (DML is a language that enables users to access or manipulate data as ornagized by the appropriate data model.)

Page 22: Database Management System Chapter 1 – An Overview

Application Program are written in a Host Language. To access the database, DML statements need to be executed from the hose language by

• Providing an application program interface (API) that can be used to send DML and DDL statements to the database, and retrieve the result. Ex. ODBC, JDBC.

• Extending the host language syntax to embed DML calls within Host Language program.. However, DML syntax is different from syntax of Host Language, Query Processor of DBMS consists of :

DDL InterpreterDML CompilerQuery Evaluation Engine

Database Access from Application Programs

Page 23: Database Management System Chapter 1 – An Overview

DDL Interpreter : แปล (interpret) ประโยคค+าส��งที่��เข้�ยนด�วย DDL และ

บ�นที่�กผลการแปลค+าส��งลงใน data dictionary

DML Compiler : แปล (translate) ประโยคค+าส��ง DML ซึ่��งเป5นภาษาที่��ใช่�

ในการส$บค�น (structure query language) ไปเป5น low-level instructions ที่�� Query Evaluation Engine

สามูารถูเข้�าใจัได� (ค+าส��ง query 1 ค+าส��ง อาจัถู�กแปลออกมูาได�มูากกว�า 1 query evaluation plans ที่��ให�ผลล�พัธ์-ที่��เหมู$อนก�น ด�งน� น เป5นหน�าที่��ข้อง DML compiler ที่��จัะต�องที่+า query optimization เพั$�อเล$อก query evaluation plans ที่��ประมูวลผลได�เร�วที่��ส&ด (The DML compler also performs query optimization; that is, it picks the lowest cost evaluation plan from among the alternatives.)

Query Evaluation Engine : เมู$�อ DML Compiler สร�าง Object Code ที่��เป5น

Low-level Instructions ข้� นมูาแล�ว ก�จัะส�งต�อให�ก�บQuery Evaluation Engine ที่+าการประมูวลผลต�อไป

Page 24: Database Management System Chapter 1 – An Overview

Data Consumers

Visual Basic Application

Other ApplicationsASP page

Visual C++ Application

Service Components

ADO Connection

ODBC

Simple Data Provider

Cursor Engine Query Processor

ODBC Provider

Data Providers

DatabaseDatabaseServerServer

Mainframe

Data

NonRelatio

nData

DML CompilerDDL InterpreterQuery Evaluation Engine

Page 25: Database Management System Chapter 1 – An Overview

How Database Represent Information

A database management system (DBMS) is a combination of software and data:

• The physical database : a collection of files that contain the data content.

•The schema: a specification of the information content of the physical database

•The database engine: software that supports access to and modification of the contents of the database

•The data definition and manipulation language: programming languages that support schema definition and database access.

Page 26: Database Management System Chapter 1 – An Overview

Overall System Structure

Query processor components • DML compiler• DDL interpreter• Query evaluation engine

Storage manager components : provides the interface between the low level data storedin the database and the application programs and queries submitted to the system

• Authorization and integrity manager : tests for the satisfaction of integrity constraints and checks the authority of users to access data.• Transaction manager : ensures that the database remains in a consistent state despite system failures and that concurrent transaction executions proceed without conflicting.• File manager : manages the allocation of space on disk storage and the data

structures used to represent information stored on disk.• Buffer manager : responsible for fetching data from disk storage into main memory.

Page 27: Database Management System Chapter 1 – An Overview

• Data files : store the database itself.• Data dictionary : stores metadata about the structure of the database.

The data dictionary is used heavily. Therefore, great emphasis should be placed on developing a good design and efficient implementation of the dictionary.

• Indices : provide fast access to data items that hold particular values.

Page 28: Database Management System Chapter 1 – An Overview

Data files Data dictionary

Indices

Transactionmanager

Buffermanager

Filemanager

Application programsobject code

Compiler and linkerDML compiler DDLinterpreter

DML compiler and organizer

Application interfaces

Application programs Query tools

Administration tools

Naïve usersApplicationprogrammers

Sophisticatedusers

Databaseadministrator

Disk storage

Storagemanager

queryprocesor

usersuse write use use

Authorizationand

integrity

manager

Query evalution engine

Page 29: Database Management System Chapter 1 – An Overview

Database Processing Advantages

Data redundancy (Repetition of data) can be reduced.

Data inconsistency can be avoided.

Data can be shared. Standard of data can be

controlled.

Concurrent-access to database can be provided.

Data Integrity and data security can be maintained.

Page 30: Database Management System Chapter 1 – An Overview

ManufacturingAccountingFinanceMarketingand Sales

HumanResources

ManufacturingSystems

AccountingSystems

FinanceSystems

Marketingand SalesSystems

HumanResourcesSystems

Businessprocesses

Businessprocesses

Businessprocesses

Businessprocesses

Businessprocesses

Business Functions

Information Systems

Org

an

izati

on

al B

ou

nd

ari

es

Org

an

izat i

on

al B

ou

nd

ari

es

CustomerCustomerCustomer

VendorsVendorsVendors

Traditional view of systems. In most organizations, separate systems built over a long period of timesupport discrete business processes and discrete business functions. The organization’s system rarely included vendors and customers.

Page 31: Database Management System Chapter 1 – An Overview

PRODUCTIONMAINTENANCE

SALES AND MARKETINGFINANCE AND ACCOUNTING

Page 32: Database Management System Chapter 1 – An Overview

1. Implement a separate “middleware” bridge to each of these specialized systems to link them all together

How to integrate functions and business processes

PRODUCTIONMAINTENANCE

SALES AND MARKETINGFINANCE AND ACCOUNTING

Page 33: Database Management System Chapter 1 – An Overview

1. Implement a separate “middleware” bridge to each of these specialized systems to link them all together

2. Implement or buy entirely new enterprise applications that can coordinate activities, decision, and knowledge across many different functions, levels, and business units in a firm.

How to integrate functions and business processes

Enterprise systems • Supply chain management systems SCM)• Customer relationship management systems (CRM)

Each of these enterprise applications integrates a related set of functions and business process to enhance the performance of the organization as a whole.

Page 34: Database Management System Chapter 1 – An Overview

Enterprise systems also known as enterprise resource planning (ERP)

The enterprise systems, designed to support organization- wide, coordinates and integrates a related set of

major internal functions and business processes to enhance the performance of the organization as a whole.

They solve the problem of organizational inefficiencies created by isolated islands of information, business processes, and technology.

Page 35: Database Management System Chapter 1 – An Overview

Business processBusiness processBusiness process

Enterprise-wide business Process

Manufacturing Accounting

FinanceMarketingand Sales

HumanResources

Vendors

Org

an

izati

on

al B

ou

nd

ari

es

Org

an

izati

on

al B

ou

nd

ari

es

Customers

Enterprise systems. Enterprise systems can integrate the key business processes of an entire firm into a single software system that allows information to flow seamlessly throughout the organization. These systems focus primarily on internal processes but may include transactions with customers and vendors.