CSE311 IAH Slide01 Intro
CSE311 IAH Slide01 Intro
CHAPTER 1: INTRODUCTION
Objectives:
vData and Information
vPurpose of Database Systems
vView of Data
vData Models
vData Definition Language
vData Manipulation Language
vTransaction Management
vStorage Management
vDatabase Administrator
vDatabase Users
vOverall System Structure
vAcid Properties
vHistory of Database Systems
WHAT IS DATA?
vData
vInformation
vKnowledge
vIntelligence
LEVELS OF ABSTRACTION
Physical level describes how a record (e.g., customer) is stored.
Logical level: describes data stored in database, and the relationships
among the data.
type customer = record
name : string;
street : string;
city : integer;
end;
View level: application programs hide details of data types. Views
can also hide information (e.g., salary) for security purposes.
VIEW OF DATA
DATA INDEPENDENCE
Physical Data Independence – the ability to modify the physical schema
without changing the logical schema
Applications depend on the logical schema
In general, the interfaces between the various levels and components should be well
defined so that changes in some parts do not seriously influence others
Example: physical location of tables and indexes should not affect the conceptual
level or external view of data.
Logical Data Independence: The data at conceptual level schema and external
level schema must be independent. This means a change in conceptual schema should
not affect external schema. e.g.; Adding or deleting attributes of a table should not
affect the user’s view of the table. But this type of independence is difficult to achieve
as compared to physical data independence because the changes in conceptual
schema are reflected in the user’s view.
EXAMPLE OF A DATABASE
(WITH A CONCEPTUAL DATA MODEL)
Mini-world for the example:
Part of a UNIVERSITY environment
EXAMPLE OF A DATABASE
(WITH A CONCEPTUAL DATA MODEL)
Some mini-world relationships:
SECTIONs are of specific COURSEs
STUDENTs take SECTIONs
COURSEs have prerequisite COURSEs
INSTRUCTORs teach SECTIONs
COURSEs are offered by DEPARTMENTs
STUDENTs major in DEPARTMENTs
DATA MODELS
A collection of tools for describing
data
data relationships
data semantics
data constraints
Entity-Relationship model
Relational model
Other models:
object-oriented model
semi-structured data models
Older models: network model and hierarchical model
ENTITY-RELATIONSHIP MODEL
DATABASE USERS
Users are differentiated by the way they expect to interact with the
system
Application programmers – interact with system through DML calls
Sophisticated users – form requests in a database query language
Specialized users – write specialized database applications that do
not fit into the traditional data processing framework
Naïve users – invoke one of the permanent application programs that
have been written previously
E.g. people accessing database over the web, bank tellers, clerical staff
DATABASE ADMINISTRATOR
Coordinates all the activities of the database system; the database
administrator has a good understanding of the enterprise’s
information resources and needs.
Database administrator's duties include:
Schema definition
Storage structure and access method definition
Schema and physical organization modification
Granting user authority to access the database
Specifying integrity constraints
Acting as liaison with users
Monitoring performance and responding to changes in requirements
DATABASE ENGINE
A database system is partitioned into modules that deal with each of the
responsibilities of the overall system.
The functional components of a database system can be divided into
The storage manager,
The query processor component,
The transaction management component.
STORAGE MANAGEMENT
Storage manager is a program module that provides the interface
between the low-level data stored in the database and the
application programs and queries submitted to the system.
The storage manager is responsible to the following tasks:
interaction with the file manager
efficient storing, retrieving and updating of data
TRANSACTION MANAGEMENT
A transaction is a collection of operations that performs a single
logical function in a database application
Transaction-management component ensures that the database
remains in a consistent (correct) state despite system failures (e.g.,
power failures and operating system crashes) and transaction failures.
Concurrency-control manager controls the interaction among the
concurrent transactions, to ensure the consistency of the database.
OVERALL SYSTEM STRUCTURE
APPLICATION ARCHITECTURES
Slide 1- 32
WHEN NOT TO USE A DBMS
When no DBMS may suffice:
If there are stringent real-time requirements that
may not be met because of DBMS overhead
(e.g., telephone switching systems)
If the database system is not able to handle the complexity of data because of
modeling limitations (e.g., in complex genome and protein databases)
If the database users need special operations not supported by the DBMS (e.g., GIS
and location based services).
Slide 1- 33