Professional Documents
Culture Documents
1 Introduction To Database Systems
1 Introduction To Database Systems
1 Introduction To Database Systems
systems
A HISTORICAL PERSPECTIVE
In this lesson:
✓
What is Database?
❖
Why use a DBMS?
❖
❖
is a collection of programs that enables users to
create and maintain a database. The DBMS is
general purpose software system that facilitates
the processes of defining, constructing,
manipulating and sharing database among
various users and application.
❖ Defining a database involves specifying
the data types, structures and
constraints of the data to be stored in
the database.
❖Constructing the database is the
process of storing the data on some
storage medium that is controlled by
the DBMS.
❖ Manipulating a database includes functions
such as querying the database to retrieve specific
data, updating the database to reflect changes
in the miniworld and generating reports from the
data.
❖Sharing a database allows multiple
users and programs to access the
database simultaneously.
Other important functions provided by the DBMS
include protecting the database and maintaining it
over a long period of time. Protection includes
system and security protection.
❖ Integrity problems
> Integrity constraints (e.g. account balance > 0) become “buried” in
program code rather than being stated explicitly
> Hard to add new constraints or change existing ones
Concurrent access by multiple users
❖ Concurrent accessed needed for performance.
❖ Uncontrolled concurrent accesses can lead to inconsistencies.
Example: Two people reading a balance and updating it at the same time.
Atomicity of updates
❖ Failures may leave database in an inconsistent state with partial updates carried
out.
Example: Transfer of funds from one account to another should either complete or not happen at all.
Security problems
❖ Hard to provide user access to some, but not all, data.
Using a DBMS to manage data has many advantages:
❖ Data independence:
Application programs should be as independent as
possible from details of data representation and
storage. The DBMS can provide an abstract view of
the data to insulate application code from such
details.
Using a DBMS to manage data has many
advantages:
❖ Data administration:
When several users share the data, centralizing the administration of
data can offer significant improvements. Experienced professionals who
understand the nature of the data being managed, and how different
groups of users use it, can be responsible for organizing the data
representation to minimize redundancy and for fine-tuning the storage
of the data to make retrieval efficient.
Using a DBMS to manage data has many
advantages:
Content:
Site a an example which implies for the need to
create a database? What is/are the need/s
addressed?
*Zero Score will be given to those who will fail to follow instructions. Strictly no
duplicate answers.
In this lesson:
✓
Describing and Storing Data
in a DBMS
A data model is a collection of high-level
data description constructs that hide
many low-level storage details. A DBMS
allows a user to define the data to be
stored in terms of a data model. Most
database management systems today
are based on the relational data model,
which we will focus on in this book.
The Relational Model
The central data
description construct in this
model is a relation, which
can be thought of as a set
of records.
The Relational Model
A description of data in terms of
a data model is called a
schema.
Conceptual Schema
In our sample university database, these
relations contain information about entities,
such as students and faculty, and about
relationships, such as students’ enrollment in
courses. All student entities can be described
using records in a Students relation, as we saw
earlier.
Level of Abstraction in a DBMS
Conceptual Schema
In fact, each collection of entities and each collection of
relationships can be described as a relation, leading to the
following conceptual schema:
Students(sid: string, name: string, login: string, age: integer, gpa: real)
Faculty(fid: string, fname: string, sal: real)
Courses(cid: string, cname: string, credits: integer)
Rooms(rno: integer, address: string, capacity: integer)
Enrolled(sid: string, cid: string, grade: string)
Teaches(fid: string, cid: string)
Meets In(cid: string, rno: integer, time: string)
Level of Abstraction in a DBMS
Conceptual Schema
The choice of relations, and the
choice of fields for each relation, is
not always obvious, and the process
of arriving at a good conceptual
schema is called conceptual
database design.
Level of Abstraction in a DBMS
The physical schema specifies
additional storage details. Essentially,
the physical schema summarizes how
the relations described in the
conceptual schema are actually
stored on secondary storage devices
such as disks and tapes.
Level of Abstraction in a DBMS
Physical Schema
We must decide what file organizations to use to store the relations, and
create auxiliary data structures called indexes to speed up data retrieval
operations. A sample physical schema for the university database follows: