Slide 1
Slide 1
(MSITec7111)
Introduction
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
Database Applications Examples
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.
Banking and finance
• customer information, accounts, loans, and banking
transactions.
• Credit card transactions
• Finance: sales and purchases of financial instruments
(e.g., stocks and bonds; storing real-time market data
Universities: registration, grades
Database Applications Examples (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
Ex: 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
Columns
Rows
Ted Codd
Turing Award 1981
A Sample Relational Database
View of Data
An architecture for a database
system
Instances and Schemas
Centralized databases
• One to a few cores, shared memory
Client-server,
• One server machine executes work on behalf of
multiple client machines.
Parallel databases
• Many core shared memory
• Shared disk
• Shared nothing
Distributed databases
• Geographical distribution
• Schema/data heterogeneity
Database Architecture
(Centralized/Shared-Memory)
Database Applications
Schema definition
Storage structure and access-method definition
Schema and physical-organization modification
Granting of authorization for data access
Routine maintenance
• Periodically backing up the database
• Ensuring that enough free disk space is
available for normal operations, and
upgrading disk space as required
• Monitoring jobs running on the database
History of Database Systems
1980s:
• Research relational prototypes evolve into commercial
systems
SQL becomes industrial standard
• Parallel and distributed database systems
Wisconsin, IBM, Teradata
• Object-oriented database systems
1990s:
• Large decision support and data-mining applications
• Large multi-terabyte data warehouses
• Emergence of Web commerce
History of Database Systems (Cont.)
2000s
• Big data storage systems
Google BigTable, Yahoo PNuts, Amazon,
“NoSQL” systems.
• Big data analysis: beyond SQL
Map reduce and friends
2010s
• SQL reloaded
SQL front end to Map Reduce systems
Massively parallel database systems
Multi-core main-memory databases