Beruflich Dokumente
Kultur Dokumente
Hierarchical
Databases
Storage
Network
and Database
Databases
History
Relational
Databases
Dra. Loreto Bravo
Facultad de Ingeniería
Universidad del Desarrollo
1725 - 1975: Punch Cards
http://royal.pingdom.com/2008/04/08/the-history-of-computer-data-storage-in-pictures/
1932 - Disk Drum - 10kB
• Formed central memory and secondary storage, also primarily
sequential, leading to flat files as best performant data
storage.
http://royal.pingdom.com/2008/04/08/the-history-of-computer-data-storage-in-pictures/
1956 - Hard Disk - 5MB
• IBM ships first Hard
Disk of the size of two
refrigerators
• This allowed the advent
of data storage beyond
flat files.
http://royal.pingdom.com/2008/04/08/the-history-of-computer-data-storage-in-pictures/
• 1981
File based storage - 1968
• Predecessor of databases
File-Based Processing
File Systems
• Enroll “Mary Johnson” in “CSE444”:
http://ed-thelen.org/SageIntro.html
• Far more complex than any
other computer project of
the 1950s
• The first major system to
run in “real-time” –
responding immediately to
requests from its users and
to reports from its sensors.
• SAGE had to present an up-
to-date and consistent
representation of the
various bombers, fighters
and bases to all its users.
• Popularized the term "data
base" to refer to the data
underlying the many
different views allowed.
http://ed-thelen.org/SageIntro.html
Hierarchical
Database
Network
Databases
Database
History
Relational
Database
Hierarchical Database - 1960
• Files are related in a parent/child manner, with each child file having at most one
parent file.
• Developed by North American Rockwell and IBM as the IMS (Information
Management System)
• IMS formed the basis for hierarchical data model
• Still Available!! http://www-01.ibm.com/software/data/ims/
• American Airlines and IBM jointly developed SABRE for making airline reservations
• SABRE is used today to populate Web-based travel services such as Travelocity
Hierarchical Database - 1960
Advantages Limitations
Advantages Limitations
Conceptual simplicity
Data Independence
Problems with first DBMS’
• Access to database was through low level pointer operations
• Storage details depended on the type of data to be stored
• Adding a field to the DB required rewriting the underlying
access/modification scheme
• Emphasis on records to be processed, not overall structure
• User had to know physical structure of the DB in order to query
for information
• Overall first DBMS’ were very complex and inflexible which made
life difficult when it came to adding new applications or
reorganizing the data
Relational Databases - 1970
Advantages Limitations
https://db-engines.com/en/ranking/relational+dbms
Relational Database System
Mobile App
Expert Relational
User Database
Database Admin
DBMS
Database
Management
System
(DBMS)
Database
DBMS
Relational
Database
Management
System
(DBMS)
Relational
Database
https://db-engines.com/en/ranking/relational+dbms
Describing Data in a DBMS
Conceptual/Logical Model
Concurrent
Access and Data Integrity
Crash and Security
Recovery
Data
Administration
Data Independence
• Data Independence:
• Appications that use the database are insulated from changes in the way
the data is structured and stored.
• Two types:
• Logical data Independence
• Physical data independence
• Independence is achieved through the use of three levels of
abstraction:
Levels of Abstraction in a DBMS
Conceptual/Logical Model
Disk
Conceptual/Logical Model
• Describes the stored data in terms of the data model of the DBMS.
• In a relational DBMS, this model describes all the relations that are stored:
Physical Database Design / Relational DBMS
• Data Independence:
• If we modify table Employee and add an extra attribute Salary, the View
EmployeeD would still be the same.
DBMS Advantages
Data Efficient Data
Independence Access
Concurrent
Access and Data Integrity
Crash and Security
Recovery
Data
Administration
Efficient Data Access
• Efficient Data Access:
• DBMS utilizes sophisticated
techniques to store and retrieve
data effectively
• Query optimization:
• Is the part of the query process in
which the database system
compares different query strategies
and chooses the one with the least
expected cost.
• The query optimizer is a key part of
the relational database and
determines the most efficient way
to access data.
• It makes it possible for the user to
request the data without specifying
how these data should be retrieved.
DBMS Advantages
Data Efficient Data
Independence Access
Concurrent
Access and Data Integrity
Crash and Security
Recovery
Data
Administration
Data Integrity and Security
• Data Integrity:
• DBMS allows to include Integrity Constraints to maintain the Data
Integrity
• There are several types of integrity constraints:
• Domain
• Primary Key
• Foreign Key
• Assertions
• …
• Data Security:
• DBMS have Access Control Mechanisms that ensure that only
authorized people can view specific parts of a DB and also limits
how they can modify it.
DBMS Advantages
Data Efficient Data
Independence Access
Concurrent
Access and Data Integrity
Crash and Security
Recovery
Data
Administration
Data Administration
• The data representation is determined by experienced
professionals, called Database Administrators
• They take into consideration:
• the nature of the data being managed,
• how different groups of users use it
• Responsible for organizing to:
• Minimize redundancy and
• Fine-tuning the storage of the data to make retrieval efficient.
Roles in the Database Environment
• Database Administrator (DBA)
• Design of the conceptual and physical schema
• Security and authorization
• Data availability and recovery from failures:
• DBMS provides software suppor to achieve this
• But the DBA should also backup the data and keeps logs
• Database tunning
• Database Implementors
• Build DBMS software
• Work at Oracle, IBM, etc
• Application Programmers
• Develop applications that interact or use databases to simplify
• Ideally should interact with views
• End Users (naive and sophisticated)
Roles in the Database Environment
Mobile App
Expert Relational
User Database
Database Admin
DBMS Advantages
Data Efficient Data
Independence Access
Concurrent
Access and Data Integrity
Crash and Security
Recovery
Data
Administration
Concurrent Access and Crash Recovery
• Concurrent Access:
• DBMS allow for several users to interact with a database at the same
time.
• When there are several requests to modify, the DBMS must order
their requests carefully to avoid conflicts.
• A locking protocol is used:
• It is a set of rules that allows a several transactions to be performed at the same
time while ensuring that the result is the same as if they would have been done
in a sequence
T1 T3 T2
Concurrent Access and Crash Recovery
• Crash Recovery:
• If the system fails, the DBMS should bring the database back to a
consistent state.
• A DBMS must ensure that the changes made by incomplete
transactions are removed from the database.
• For example, if the DBMS is in the middle of transferring money from account A
to account B, and has debited the first account but not yet credited the second
when the crash occurs, the money debited from account A must be restored
when the system comes back up after the crash.
• To achieve this the DBMS uses logs where the write operations are
written before they are performed
DBMS Advantages
Data Efficient Data
Independence Access
Concurrent
Access and Data Integrity
Crash and Security
Recovery
Data
Administration