What Are Databases?
What Are Databases?
2 Architectures
3 Areas of Application
4 History
1
http://www.merriam-webster.com/dictionary/base
Saake Database Concepts Last Edited: April 2019 1–3
What are Databases? Overview & Motivation
Areas of Application
Without databases
Each application manages its own data
Data is stored multiple times redundancy
Problems
I Waste of storage space
I “Forgetting” of changes
I No centralized, “standardized” data management
DBS =
Database System
Motivation
Database systems
are center piece of
modern IT
systems
. . . ubiquitous
Database
specialists are in
high demand
Questions
1 How to organize (model and use) data?
2 How to store data safely and persistently?
3 How to process huge amounts of data ( terabytes) efficiently?
4 How can many users ( 10,000) access data concurrently?
Schema Architecture
External External
Schema 1
... Schema N
Query Processing
Data Representation
Conceptual
Schema
Internal
Schema
Schema Architecture /2
Connection between
I Conceptual schema (result of data definition)
I Internal schema (definition of file structure and access paths)
I External schemata (result of view definition)
I Application programs (result of application programming)
Schema Architecture /3
Separation schema — instance
I Schema (metadata, data description)
I Instance (user data, database state or shape)
Database schema consists of
I Internal, conceptual, external schemata and application programs
Conceptual schema contains, e.g.:
I Structure descriptions
I Integrity descriptions
I Authorization rules (DB accesses that a user may perform)
Data Independence /2
Stability of user interface with respect to changes
Physical: Changes to file structure or access paths do not
influence the conceptual schema
Logical: Changes to conceptual schema and certain external
schemata do not influence other external schemata or application
programs
Data Independence /3
Potential impact of changes to the conceptual schema:
I external schemata may be affected (changing attributes)
I application programs may be affected (recompilation of application
programs, adaptions may be necessary)
But: necessary changes are recognized and monitored by the
DBMS
Title
Musician
Year
Price
Critique(s)
Tracks
Artist Album
Title Year Genre
Apocalyptica Amplified 2006 Rock
Reflections 2003 Rock
Subway To Sally Nord Nord Ost 2005 Metal
Engelskrieger 2003 Rock
Rammstein Rosenrot 2005 Rock
Partial
Storage
of Data Sets
1014 Amplified 2006
in a Tree
Space for
Data Sets
Overflow
19.99 Rock 103 ....
15.99 Rock 104 ....
System Architectures
Description of components of a database system
Standardized interfaces between components
Architecture proposals
I ANSI-SPARC architecture
three layer architecture
I Five layer architecture
describes transformation components in detail
Lecture “Database Implementation Techniques”
ANSI-SPARC Architecture
ANSI: American National Standards Institute
SPARC: Standards Planning and Requirement Committee
Proposal from 1978
Basically refines coarse architecture
I Internal layer / operation system refined
I Multiple interactive and programming components
I Interfaces named and standardized
ANSI-SPARC Architecture /2
External Layer Conceptual Layer Internal Layer
Query
Optimizer Mapping Disk Access
Updates
DB- Data
P1
Operations Dictionary
Embedding
...
View File
Pn GUIs
Definition Organisation
Data Definition
Classification of Components
Definition components: data definition, file organization, view
definition
Programming components: DB programming with embedded DB
operations
User components: interactive application programs, query and
update
Transformation components: optimizer, analysis, disk access
Data dictionary: contains data from definition components,
provides other components with this information
DI Device
Interface
External Storage
Saake Database Concepts Last Edited: April 2019 1–26
What are Databases? Architectures
Application Architectures
Architecture of database applications typically based on
client-server model: server ⌘ database system
Client Server
(Customer) (Service Provider)
1. Request
2. Processing
3. Answer
Application Architectures /2
Separation of functionality of an application
I Presentation and user interaction
I Application logic (“business logic”)
I Data management functionality (store, query, . . . ).
DB-Server
DB-Server
Areas of Application
Classical areas of application:
I Many objects (15,000 books, 300 users, 100 books borrowed per
week, . . . )
I Few object types (BOOK, USER, BORROWING)
I For instance, book keeping systems, order tracking systems, library
systems, . . .
Current applications:
I E-Commerce, decision supporting systems (data warehouses,
OLAP), NASA’s Earth Observation System (petabyte databases),
data mining
Database Sizes
History of RDBMS
1970: Ted Codd (IBM) ! relational model as conceptual basis of
relational DBS
1974: System R (IBM) ! first prototype of an RDBMS
I Two modules: RDS, RSS; ca. 80,000 LOC (PL/1, PL/S, assembler),
ca. 1.2 MB of code
I Query language SEQUEL
I First deployment 1977
1975: University of California at Berkeley (UCB) ! Ingres
I Query language QUEL
I Predecessor of Postgres, Sybase, . . .
1979: Oracle Version 2
Trends
User-generated content, e.g., Google:
I Daily processing of 20 PB
I 15 hours of video uploaded to YouTube every minute
I Reading 20 PB would take 12 years with a 50 MB/s hard disk drive
Linked data and data web
I Provision, exchange and linking of structured data on the Web
I Enables querying (with query languages like SPARQL) and further
processing
I Examples: DBpedia, GeoNames
Summary
Motivation for using database systems
Codd’s rules
3 layer schema architecture & data independence
Areas of application
Control Questions
What is the advantage of using database
systems compared to application-specific
data management?
What does data independence mean and
how is it achieved?
Which are areas of application of
database systems?