ch1 Intro
ch1 Intro
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 System Concepts - 7th Edition 1.2 ©Silberschatz, Korth and Sudarshan
Files and Databases
4 Scalability Not ideal for larger and Designed for scalability and
complex data performance
Database System Concepts - 7th Edition 1.4 ©Silberschatz, Korth and Sudarshan
Database
Metadata
• Data about data
In DBMS means all of the characteristics describing the
attributes of an entity, E.G.:
• name of attribute
• data type of attribute
• size of the attribute
• format or special characteristics
• Characteristics of files or relations
name, content, notes, etc.
History
• 50’s and 60’s all applications were custom built for particular needs
• File based
• Many similar/duplicative applications dealing with collections of
business data
• Early DBMS were extensions of programming languages
• 1970 - E.F. Codd and the Relational Model
• 1979 - Ashton-Tate & first Microcomputer DBMS
Application File
Delivery Toys
List Addresses
Coal
Estimation Naughty
Just what
asked for Nice Toys
Database System Concepts - 7th Edition 1.11 ©Silberschatz, Korth and Sudarshan
DBMS Benefits
•Minimal Data Redundancy
Same data is not stored in multiple places unnecessarily, which saves space and avoids
confusion.
•Consistency of Data
Since there's less duplication, data is more likely to be accurate and up to date everywhere it's
used.
•Integration of Data
Data from different departments or systems can be brought together into one database,
allowing a complete view of information.
•Sharing of Data
Multiple users and applications can access the same data simultaneously while ensuring data
security and consistency.
•Ease of Application Development
Developers don’t need to handle data management from scratch; DBMS provides tools and
APIs for easy integration and development.
•Uniform Security, Privacy, and Integrity Controls
Centralized rules and access control protect data from unauthorized access and maintain data
correctness and privacy.
•Data Accessibility and Responsiveness
Data can be retrieved quickly using powerful query languages like SQL, improving the speed
and responsiveness of applications.
•Data Independence
Applications are independent of how data is stored. If the data structure changes, the
application code doesn't necessarily need to change.
•Reduced Program Maintenance
Because data handling is centralized and managed by the DBMS, individual programs require
less maintenance when the database changes.
• Physical representation and location of data and the use of that data
are separated
The application doesn’t need to know how or where the
database has stored the data, but just how to ask for it.
Moving a database from one DBMS to another should not have a
material effect on application program
Recoding, adding fields, etc. in the database should not affect
applications
DBMS
Repository Database
Database System Concepts - 7th Edition 1.15 ©Silberschatz, Korth and Sudarshan
Repository
• A special database that stores metadata (data about data) — for example, definitions of
tables, fields, relationships, constraints, and system documentation.
Database
• The actual collection of data that the DBMS manages.
• Stores the operational data for the system (like customer records, transactions, etc.)
.
How it All Connects:
Users interact via a User Interface, which communicates with both Application Programs and
CASE Tools.
CASE Tools interact with the Repository to access metadata.
Application Programs send and receive data from the DBMS.
The DBMS manages both the actual Database and the Repository, ensuring data integrity,
security, and consistency.
Database System Concepts - 7th Edition 1.16 ©Silberschatz, Korth and Sudarshan
Database Components
DBMS
===============
Design tools
Table Creation
Form Creation
Query Creation
Report Creation
Application
Procedural
language Programs
Database
compiler (4GL)
=============
Run time
Database contains: Form processor
User’s Data Query processor User
Metadata Report Writer Interface
Indexes Language Run time
Applications
Application Metadata
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 System Concepts - 7th Edition 1.18 ©Silberschatz, Korth and Sudarshan
Database Applications Examples (Cont.)
Database System Concepts - 7th Edition 1.19 ©Silberschatz, Korth and Sudarshan
Purpose of Database Systems
In the early days, database applications were built directly on top of file
systems, which leads to:
Database System Concepts - 7th Edition 1.20 ©Silberschatz, Korth and Sudarshan
Purpose of Database Systems (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
Database System Concepts - 7th Edition 1.21 ©Silberschatz, Korth and Sudarshan
University Database Example
Database System Concepts - 7th Edition 1.22 ©Silberschatz, Korth and Sudarshan
View of Data
Database System Concepts - 7th Edition 1.23 ©Silberschatz, Korth and Sudarshan
Data Models
Database System Concepts - 7th Edition 1.24 ©Silberschatz, Korth and Sudarshan
Relational Model
Columns
Rows
Ted Codd
Turing Award 1981
Database System Concepts - 7th Edition 1.25 ©Silberschatz, Korth and Sudarshan
A Sample Relational Database
Database System Concepts - 7th Edition 1.26 ©Silberschatz, Korth and Sudarshan
Levels of Abstraction
Database System Concepts - 7th Edition 1.27 ©Silberschatz, Korth and Sudarshan
View of Data
Database System Concepts - 7th Edition 1.28 ©Silberschatz, Korth and Sudarshan
Instances and Schemas
Database System Concepts - 7th Edition 1.29 ©Silberschatz, Korth and Sudarshan
Physical Data Independence
Database System Concepts - 7th Edition 1.30 ©Silberschatz, Korth and Sudarshan
Data Definition Language (DDL)
Database System Concepts - 7th Edition 1.31 ©Silberschatz, Korth and Sudarshan
Data Manipulation Language (DML)
Database System Concepts - 7th Edition 1.32 ©Silberschatz, Korth and Sudarshan
SQL Query Language
Database System Concepts - 7th Edition 1.33 ©Silberschatz, Korth and Sudarshan
Database Access from Application Program
Database System Concepts - 7th Edition 1.34 ©Silberschatz, Korth and Sudarshan
Database Design
Database System Concepts - 7th Edition 1.35 ©Silberschatz, Korth and Sudarshan
Database Engine
Database System Concepts - 7th Edition 1.36 ©Silberschatz, Korth and Sudarshan
Storage Manager
Database System Concepts - 7th Edition 1.37 ©Silberschatz, Korth and Sudarshan
Storage Manager (Cont.)
Database System Concepts - 7th Edition 1.38 ©Silberschatz, Korth and Sudarshan
Query Processor
Database System Concepts - 7th Edition 1.39 ©Silberschatz, Korth and Sudarshan
Query Processing
Database System Concepts - 7th Edition 1.40 ©Silberschatz, Korth and Sudarshan
Transaction Management
Database System Concepts - 7th Edition 1.41 ©Silberschatz, Korth and Sudarshan
Database Architecture
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 System Concepts - 7th Edition 1.42 ©Silberschatz, Korth and Sudarshan
Database Architecture
(Centralized/Shared-Memory)
Database System Concepts - 7th Edition 1.43 ©Silberschatz, Korth and Sudarshan
Database Applications
Database System Concepts - 7th Edition 1.44 ©Silberschatz, Korth and Sudarshan
Two-tier and three-tier architectures
Database System Concepts - 7th Edition 1.45 ©Silberschatz, Korth and Sudarshan
Database Users
Database System Concepts - 7th Edition 1.46 ©Silberschatz, Korth and Sudarshan
Database Administrator
A person who has central control over the system is called a database
administrator (DBA). Functions of a DBA include:
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
Database System Concepts - 7th Edition 1.47 ©Silberschatz, Korth and Sudarshan
History of Database Systems
Database System Concepts - 7th Edition 1.48 ©Silberschatz, Korth and Sudarshan
History of Database Systems (Cont.)
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
Database System Concepts - 7th Edition 1.49 ©Silberschatz, Korth and Sudarshan
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
Database System Concepts - 7th Edition 1.50 ©Silberschatz, Korth and Sudarshan
End of Chapter 1
Database System Concepts - 7th Edition 1.51 ©Silberschatz, Korth and Sudarshan