0% found this document useful (0 votes)
34 views

Week # 01

Fizza Aqeel provides their contact information including their room number in the basement-1 of the building, email address, and extension number. They share the Google Classroom code for the course and provide an outline of the topics and chapters to be covered each week over the 15 week period as well as the course objectives, outcomes, and grading breakdown.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
34 views

Week # 01

Fizza Aqeel provides their contact information including their room number in the basement-1 of the building, email address, and extension number. They share the Google Classroom code for the course and provide an outline of the topics and chapters to be covered each week over the 15 week period as well as the course objectives, outcomes, and grading breakdown.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 42

HELLO!!

I’M FIZZA AQEEL

WHERE YOU CAN FIND ME:


ROOM#: 3, BASEMENT-1
EMAIL: [email protected]
EXT: 153
Books and Reference Material

► Google class room Code: gozuk3s

► Week#1
► Lecture # 1,2
► TextBook: Ramez Elmasri & Shamkant B. Navathe, Database Systems, Models,
Languages, Design and Application Programming, 7th Edition, 2016.
► Reference Books: Thomas Connolly, Carolyn Begg, Database Systems: A
practical approach to design, implementation and Management, 6th Edition,
2015.
► C.J. Date, An Introduction to Database Systems, 8th Edition, 2004
Week Wise Lab Course Plan
1. Topics to be covered:
List of Topics No. of Weeks Contact Hours
CLO

Chapter 1
Introduction, Characteristics of Database Approach, Files Vs. Databases, Characteristics of
Database approach, Advantages of using DBMS, When not to use DBMS,
Chapter 2
2 6 1
Data Model, Schema and Instance, three schema architecture and data independence, classification
of DBMS, database languages & Interfaces, Database systems environment.
Chapter 5
Relational Model Concepts, Relational Model Constraints

Chapter 5
Relational Database Schemas, Update Operations, Transactions, and Dealing with Constraint
Violations
2 6 1,2
Chapter 6
SQL Data Definition and Data Types, Specifying Constraints in SQL, Basic Retrieval Queries in
SQL, INSERT, DELETE, and UPDATE Statements in SQL, Additional Features of SQL
Chapter 7
More Complex SQL Retrieval Queries, Views (Virtual Tables) in SQL, Schema Change Statements 1 3 1,2
in SQL
========== MID 1 ==========
Chapter 3
Using High-Level Conceptual Data Models for Database Design, A Sample Database Application.
Entity Types, Entity Sets, Attributes, and Keys, Relationship Types, Relationship Sets, Roles, and
1.5 4.5 2
Structural Constraints, Weak Entity Types, Refining the ER Design for the COMPANY Database,
ER Diagrams, Naming Conventions, and Design Issues, Relationship Types of Degree Higher than
Two
Chapter 8
Unary Relational Operations: SELECT and PROJECT
Relational Algebra Operations from Set Theory 1 3 2
Binary Relational Operations: JOIN and DIVISION
Examples of Queries in Relational Algebra
Chapter 14
Informal Design Guidelines for Relation Schemas
Functional Dependencies/Normal Forms Based on Primary Keys
2.5 7.5 3
General Definitions of Second and Third Normal Forms, Boyce-Codd Normal Form
Multivalued Dependency and Fourth Normal Form
Join Dependencies and Fifth Normal Form

========== MID 2 ==========

Chapter 20
Introduction to Transaction Processing
Transaction and System Concepts
Desirable Properties of Transactions
Characterizing Schedules Based on Recoverability
Characterizing Schedules Based on Serializability
Transaction Support in SQL,
2 6 1,2
Chapter 21
Two-Phase Locking Techniques for Concurrency Control
Concurrency Control Based on Timestamp Ordering
Multiversion Concurrency Control Techniques
Validation (Optimistic) Concurrency Control Techniques
Granularity of Data Items and Multiple Granularity Locking

Chapter 22
Recovery Concepts
NO-UNDO/REDO Recovery Based on Deferred Update
Recovery Techniques Based on Immediate Update
1.5 4.5 1,2
Chapter 24
Introduction to NOSQL Systems
Document-Based NOSQL Systems and MongoDB
NOSQL Key-Value Stores
Column-Based or Wide Column NOSQL Systems
Review 0.5 1.5 1,2,3
Project Presentations 1 3 1
Total 15 45
Marks Distribution
► Mid exam: 30 (Mid1-15 & Mid2-15)
► Assignment: 10
► Project: 10
► Final: 50
► Late Submission of Assignment will result in deduction of marks.
Course Objective:
► To Understand the basic concepts and the applications of database systems
► To Master the basics of SQL and construct queries using SQL
► To understand the relational database design principles
► To become familiar with the basic issues of transaction processing and
concurrency control
► To become familiar with database storage structures and access techniques
Course Outcomes:
► By the end of the course, the student will be able to
► Describe a relational database and object-oriented database
► Create, maintain and manipulate a relational database using SQL
► Describe ER model and normalization for database design
► Examine issues in data storage and query processing and can formulate
appropriate solutions
► Outline the role and issues in management of data such as efficiency, privacy,
security, ethical responsibility, and strategic advantage
General Idea

► Essential component of life: most of us encounter several activities every day


that involve some interaction with a database.
► Banking(money deposit and withdraw)
► Hotel Reservation
► Airline Reservation
► Accessing online Library
► Shopping (Daraz, AliExpress, Amazon etc.)
► Car Booking (Careem, Uber etc.)
General Idea

► Traditional databases: Most of the information that is stored and accessed is either
textual or numeric.
► Non-traditional databases/Bigdata storage systems/ NOSQL systems: created to
manage data for social media applications.
► Facebook (Posts, images and video clips)
► Twitter (Tweets, images and video clips)
► Google
► Amazon
► Yahoo
► A large amount of data now resides on the “cloud”. which means it is in huge
data centers using thousands of machines.
Introduction

► Data: Known facts that can be recorded and have an implicit meaning;
► Database: a highly organized, interrelated, and structured set of data.
Introduction

► A database can be of any size and complexity.


► An example of a large commercial database is Amazon.com. It contains:
► Data for over 60 million active users, and millions of books, CDs, videos, DVDs,
games, electronics, apparel, and other items.
► The database occupies over 42 terabytes.
Data VS Information
Data Information

Khi Sales Isb DEPT_No DEPT_Name DEPT_Location


10 Lhr 20 10 Sales Khi
20 Marketing Lhr
Marketing 30 Production
30 Production Isl

• Unsorted • Sorted
• Meaningless • Meaningful & understandable
• Cannot use such type of data/info in any • Can use this data/info for extracting useful
useful purpose. information.
Why Databases?
► Businesses cannot run without knowing their data: customers, products, prices,
employees, wages, etc.?
► Properly maintained data is important in decision making and hence in the success of a
business.
► The amount of data utilized in a business can grow fast.
► Examples:
► Phone companies keep data on trillions of phone calls, adding 70,000 calls per
second.
► Google is estimated to perform 91 million searches per day across a data that is
several terabytes in size.
► How do these businesses maintain this data? and do searches on this data to find desired
information?
► Answer: By using Databases
What Is Database??
► A database is an organized collection of structured information, or data, typically stored
electronically in a computer system.
OR
► A database represents some aspect of the real world, sometimes called the miniworld
or the universe of discourse (UoD).
► Data within the most common types of databases in operation today is typically
modeled in rows and columns in a series of tables to make processing and data
querying efficient.
► The data can then be easily accessed, managed, modified, updated, controlled, and
organized. Most databases use structured query language (SQL) for writing and
querying data.
What Is DBMS?
► A database typically requires a comprehensive database software program known as a database
management system (DBMS). A DBMS serves as an interface between the database and its end
users or programs, allowing users to retrieve, update, and manage how the information is
organized and optimized.
► Some examples of popular database software or DBMSs include MySQL, Microsoft Access,
Microsoft SQL Server, FileMaker Pro, Oracle Database, and dBASE.
Difference Between A Database And A
Spreadsheet?
► Spreadsheets were originally designed for one user, and their characteristics reflect that. They’re
great for a single user or small number of users who don’t need to do a lot of incredibly
complicated data manipulation.

► Databases, on the other hand, are designed to hold much larger collections of organized
information—massive amounts, sometimes. Databases allow multiple users at the same time to
quickly and securely access and query the data using highly complex logic and language.
Characteristics of DB Approach
Types of DBMS
► Relational(SQL databases)
► Data Model is based on tables
► Non-Relational(NoSQL databases)
► Data Model is based on XML,JSON or Plain Text i.e. no tabular form of database.
► Network
► Data Model based on graph with nodes as records and relationship between records as edges.

► Hierarchical
► Data Model based on tree data structure

► Object Oriented
► Data Model based on Object Oriented paradigm

► Distributed
► Composed of several independent DBMS running at the nodes of a Communication Network.
Properties of Database

► A database has the following implicit properties:


► A database represents some aspect of the real world, sometimes called the miniworld
or the universe of discourse (UoD). Changes to the miniworld are reflected in the
database.
► A database is a logically coherent collection of data with some inherent meaning. A
random assortment of data cannot correctly be referred to as a database.
► A database is designed, built, and populated with data for a specific purpose.
It has an intended group of users and some preconceived applications in which these
users are interested.
Database management system (DBMS)

► Computerized system that enables users to create and maintain a database.


► For example: MySQL, Oracle, etc. are a very popular commercial database which is
used in different applications.
► General-purpose software system: facilitates the processes of defining,
constructing, manipulating, and sharing databases among various users and
applications.
DBMS Functionality

► Define a database : in terms of data types, structures and constraints


► Construct or Load: storing data on a secondary storage medium.
► Manipulating the database : querying, generating reports, insertions, deletions
and modifications to its content
► Concurrent Processing and Sharing by a set of users and programs – yet, keeping
all data valid and consistent.
DBMS FUNCTIONALITY

► An application program accesses the database by sending queries for data to the
DBMS.
► Query: to retrieve and manipulate data.
► Transaction: that reads and write data into the database.
► Other important functions provided by the DBMS include:
► Protection against hardware or software malfunction and unauthorized or malicious
access.
► Maintenance: database can be maintained and updated for a long period of time.
Simplified Database System Environment
UNIVERSITY Database Example
► Some mini-world entities:
► Students
► Courses
► Sections (of courses)
► Departments
► Instructors
► 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
UNIVERSITY Database Example

Figure 1.2
A database that stores
student and course
information.
Characteristics of Database Approach
► Self-describing nature of a database system.
► Database system contains not only the database itself but a complete definition or
description of the database structure and constraints.
► This definition is stored in the DBMS catalog.
► Structure of each file
► Type
► Storage
► Format of each data item
► Various constraints on the data.

► The information stored in the catalog is called meta-data, and it describes the
structure of the primary database.
Example of a DATABASE CATALOG

Figure 1.3
An example of a
database catalog for
the database in
Figure 1.2.
Characteristics of Database Approach
► Insulation between programs and data, and data abstraction
► Program-data independence: Allows changing data storage structures and operations
without having to change the DBMS access programs.
► Program-operation independence: User application programs can operate on the
data by invoking operations through their names and arguments, regardless of how the
operations are implemented.
► The characteristic that allows program-data independence and program-operation
independence is called data abstraction.
Internal storage format for a STUDENT
record, based on the database catalog

Figure 1.4
Internal storage format
for a STUDENT record,
based on the database
catalog in Figure 1.3.
Characteristics of Database Approach

► Support of multiple views of the data


► A database typically has many types of users, each of whom may require a different
view of the database.
► View: subset of the database or it may contain virtual data that is derived from the
database files but is not explicitly stored.
UNIVERSITY Database Example

Figure 1.2
A database that stores
student and course
information.
Characteristics of Database Approach

Two views derived from the database in Figure


(a) The TRANSCRIPT view.
(b) The COURSE_PREREQUISITES view.
Characteristics of Database Approach

► Sharing of data and multiuser transaction processing.


► Multiple users to access the database at the same time.
► Concurrency control: ensures that several users trying to update or retrieve the same
data in so controlled manner.
► i.e., Airline Reservation
► A fundamental role of multiuser DBMS software is to ensure that concurrent transactions
operate correctly and efficiently.
Files vs Databases

► Program data dependence.


► No Data Security.
► Data Inconsistency and lack of data Integrity.
► Not Flexible.
► Separation and isolation of data
► Duplication of data.
► Fixed queries
Advantages of using DBMS

► Controlling Redundancy
► Duplication of efforts.
► Storage space is wasted when the same data is stored repeatedly.
► Inconsistency: files that represent the same data may become inconsistent. This may
happen because an update is applied to some of the files but not to others
► Restricting Unauthorized Access
► Using particular accounts protected by password
► For example, financial data such as salaries and bonuses is often considered
confidential, and only authorized persons are allowed to access such data.
Advantages of using DBMS

► Providing Persistent Storage for Program Objects.


► Providing Storage Structures and Search Techniques for Efficient Query
Processing.
► Data buffering or caching: DBMSs do their own data buffering.
► Query processing and optimization module: responsible for choosing an efficient
query execution plan for each query based on the existing storage structures.
Advantages of using DBMS

► Providing Backup and Recovery


► Providing Multiple User Interfaces
► Query languages for casual users
► Programming language interfaces for application programmers
► Forms and command codes for parametric users
► Menu-driven interfaces
► Natural language interfaces for standalone users.
► Representing Complex Relationships among Data
► Enforcing Integrity Constraints.
Additional Implications of Using the Database
Approach
► Potential for Enforcing Standards.
► Standards can be defined for names and formats of data elements, display formats, report structures,
terminology, and so on.
► Reduced Application Development Time
► once a database is up and running, substantially less time is generally required to create new applications.
► Flexibility to change the structure of a database as requirements change.
► Availability of Up-to-Date Information
► Reservation systems
► Banking databases, and it is made possible by the concurrency control and recovery subsystems of a
DBMS
► Economies of Scale
► Combining all the organization’s operational data into one database and creating a set of applications that
work on this one source of data can result in cost savings.
When Not To Use DBMS

► Situations in which a DBMS may involve unnecessary overhead costs.


► High initial investment in hardware, software, and training.
► The basic properties that a DBMS provides for defining and processing data
► Overhead for providing security, concurrency control, recovery, and integrity
functions.
When Not To Use DBMS

► No multiple-user access to data.


► Embedded systems with limited storage capacity, where a general-purpose DBMS
would not fit.
► Stringent, real-time requirements for some application programs that may not be
met because of DBMS overhead.
► i.e., telephone switching systems
► Simple, well-defined database applications that are not expected to change at all.
Q&A

You might also like