Database Management Systems

 Database Management Systems

       Module Objectives

To understand the importance of database management

     systems in modern day applications

To Know Your Course


Module Outline

 Why Databases?

 KYC: Know Your Course

 Course Prerequisite

 Course Outline

 Course Text Book

 Course TAs


WHY DATABASES?

Database Management System (DBMS)

 DBMS contains information about a particular enterprise

 Collection of interrelated data

 Set of programs to access the data

 An environment that is both convenient and efficient to use

 Database Applications:

 Banking: transactions

 Airlines: reservations, schedules

 Universities: registration, grades

 Sales: customers, products, purchases

 Online retailers: order tracking, customized recommendations

 Manufacturing: production, inventory, orders, supply chain

 Human resources: employee records, salaries, tax deductions

 ...

 Databases can be very large

 Databases touch all aspects of our lives


University Database Example

 Application program examples

 Add new students, instructors, and courses

 Register students for courses, and generate class rosters

 Assign grades to students, compute grade point averages

    (GPA) and generate transcripts


 In the early days, database applications were built directly on

     top of file systems


Drawbacks of using file systems to store data

 Data redundancy and inconsistency

 Multiple file formats, duplication of information in different files

 Difficulty in accessing data

 Need to write a new program to carry out each new task

 Data isolation

 Multiple files and formats

 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


Drawbacks of using file systems to store data (Cont.)

 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

 Concurrent access by multiple users

 Concurrent access needed for performance

 Uncontrolled concurrent accesses can lead to inconsistencies

 Example: Two people reading a balance (say 100) and

     updating it by withdrawing money (say 50 each) at the same

      time

 Security problems

 Hard to provide user access to some, but not all, data


Course Prerequisites

 Essential

 Set Theory

 Definition of a Set

– Intentional Definition

– Extensional Definition

– Set-builder Notation

 Membership, Subset, Superset, Power Set, Universal Set

 Operations on sets:

– Union, Intersection, Complement, Difference, Cartesian Product

 De Morgan’s Law

Comments