Introduction To Data Management
Introduction To Data Management
Outline
• Database-System Applications
• Purpose of Database Systems
• View of Data
• Database Languages
• Database Design
• Database Engine
• Database Architecture
• Database Users and Administrators
• History of Database Systems
• DBMS contains information about a particular
enterprise
• Collection of interrelated data
Database • Set of programs to access the data
• An environment that is both convenient
Systems and efficient to use
• Database systems are used to manage
collections of data that are:
• Highly valuable
• Relatively large
• Accessed by multiple users and
applications, often at the same time.
• A modern database system is a complex
software system whose task is to manage a
large, complex collection of data.
• Databases touch all aspects of our lives
• Enterprise Information
• Sales: customers, products, purchases
• Accounting: payments, receipts, assets
• Human Resources: Information about employees,
salaries, payroll taxes.
• Manufacturing: management of production, inventory,
orders, supply chain.
Database • Banking and finance
Examples
• Credit card transactions
• Finance: sales and purchases of financial
instruments (e.g., stocks and bonds; storing real-
time market data
• Universities: registration, grades
Database • Airlines: reservations, schedules
Applications • Telecommunication: records of calls, texts,
and data usage, generating monthly bills,
Examples maintaining balances on prepaid calling cards
• Web-based services
(Cont.) • Online retailers: order tracking,
customized recommendations
• Online advertisements
• Document databases- – non relational
database that is designed to store and
query data as JSON-like documents.
• Navigation systems: For maintaining the
locations of varies places of interest along
with the exact routes of roads, train systems,
buses, etc.
In the early days, database applications were built directly
on top of file systems, which leads to:
Systems
to inconsistencies
• Ex: Two people reading a balance (say
100) and updating it by withdrawing
(Cont.) money (say 50 each) at the same time
• Security problems
• Hard to provide user access to some, but not
all, data
Rows
Ted Codd
Turing Award 1981
A Sample Relational Database
• Physical level: describes how a record (e.g.,
instructor) is stored.
• Logical level: describes data stored in database,
and the relationships among the data.
type instructor = record
Levels of ID : string;
name : string;
Language
• Data dictionary contains metadata (i.e., data about data)
• Database schema
(DDL)
• Integrity constraints
• Primary key (ID uniquely identifies instructors)
• Authorization
• Who can access what
• Language for accessing and updating the data organized
by the appropriate data model
• DML also known as query language
• There are basically two types of data-manipulation
Data language
• Procedural DML -- require a user to specify what
Manipulation
data are needed and how to get those data.
• Declarative DML -- require a user to specify what
data are needed without specifying how to get
(DML)
are procedural DMLs.
• Declarative DMLs are also referred to as non-procedural
DMLs
• The portion of a DML that involves information retrieval
is called a query language.
• SQL query language is nonprocedural. A query takes as
input several tables (possibly only one) and always
returns a single table.
• Example to find all instructors in Comp. Sci. dept
select name
from instructor