Lecture 1
Lecture 1
Bushra
[email protected]
Course Outline
● Basic database concepts
● Data Model, schema architecture and data independence
● Classification of DBMS and Database systems environment.
● Relational Model Concepts, Constraints and Relational Databases
● Basic SQL
● Advanced SQL concepts
● Conceptual Modeling
● Relational Algebra
● Basics of Functional Dependencies and Normalization for Relational Databases
● Introduction to Transaction Processing Concepts and Theory
● Concurrency Control Techniques
● Database Recovery Techniques
● NOSQL Databases and Big Data Storage Systems
Books
Text Books
Reference Books
Assignment 10
Mid Exams 30
Project 9
Final 50
Class Participation 1
A database is
a collection of
related What is a Database?
data.
Implicit properties of a
database
1. A database represents the miniworld or the
universe of discourse (UoD).
2. A database is a logically coherent collection of
data with some inherent meaning
Constructing a database
● Storing the data on some storage medium that is
controlled by the DBMS.
Manipulating a database
● functions such as querying the database to
retrieve specific data, updating the database to
reflect changes in the miniworld, and generating
Sharing a database
● a decentralized approach
○ where each department stored and controlled its own data
○ Data processing department would write programs for each
application each office needs.
○ The queries and the file structure would be hard-coded
within each program
Limitations of File Processing
● Separation and isolation of data
Approach
○ it is more difficult to access data that should be
available.
● Duplication of data
○ redundancy in defining and storing data results in wasted
storage space
○ in redundant efforts to maintain common up-to-date
data.
Limitations of File Processing
Program - Data dependence
Approach
● physical structure and records are defined in the application
code
● changes to an existing structure are difficult to make.
○ Example: if the employee name field is changed from 40 to
50 characters, then all programs that use a file which contains
the employee name field will need to be updated.
○ Additionally, the DP department must write a program to
transform each file that contains the employee name field to
the new format
Limitations of File Processing
● Incompatible file formats
Approach
○ the structures are dependent on the application
programming language as the structure is embedded
in application programs.
● Fixed queries/proliferation of application programs
○ file-based systems are very dependent upon the
application developer, who has to write any queries or
reports that are required.
Database Approach
Database Approach
● Example:
Conceptual representation
of Student records
Characteristics of Database Approach
● Controlling Redundancy
● Restricting Unauthorized Access
● Providing Persistent Storage for Program Objects
○ Databases can be used to provide persistent storage for
program objects and data structures.
○ Object-oriented database systems are compatible with
programming languages
● Drawing inferences and actions from the stored data
Advantages of using DBMS
● Flexibility.
● Availability of Up-to-Date Information.
● Economies of Scale.
● Data consistency
○ By eliminating or controlling redundancy, we reduce the
risk of inconsistencies occurring.
Disadvantages of DBMS
● Complexity
● Size
● Cost of DBMS
○ Maintenance Cost
○ Additional Hardware Cost
● Greater impact of a failure
When not to use a DBMS