First Lecture - CS 609 : Database Management
Download
Report
Transcript First Lecture - CS 609 : Database Management
History of Implementation
Data Models
Databases were:
• Early Business Computer Systems
– Accounting functions - payroll, profit/loss
statements
• Files of data - file oriented (physical
hardware)
– sequential and
random access (index)
In 1960's needed:
•
•
•
•
Integrated centralized data structure
Redundancy
DBA's
Data models
Mid 1960's - Hierarchical data
model
•
•
•
•
•
logical level - data relationships
relationships structured as hierarchies
parents and children
child can have only 1 parent
1-to-many
Hierarchical Example
Store
products
supplier
manu
customer
Invoice
To query Hierarchical
• Used pointers
• Any query through the data followed pointers
• manipulated 1 row at a time
For each store:
Get next store
For each product:
Get next product
For each supplier:
Get next supplier
Process supplier
Hierarchical DB
• Problems?
– How to represent many-to-many relationships?
Late 1960's - Network Model
•
•
•
•
Many-to-many relationships
More than 1 parent
Records a member in a set
Owner-Member Relationship
– Implemented as circular linked lists
• A child may appear multiple times in each circle
• Can implement with pointers to objects disk
• Excellent retrieval performance
Network example
Store
customer
(owner)
Product
(member)
Supplier
customer
(owner)
Invoice
(member)
Network
Query language:
Move
Find
Get
Still had to specify a record at a time
Network
• Similar to hierarchical
– Get next, etc.
• Precursor to object-oriented
• Problems?
– Query language
1970's Relational Model - E.F.
Codd
• Rows and Columns
• Easier to write queries
Relational example
Product:
PID type price supplierID
Supplier:
SID location
Relationships?
Primary and Foreign key
Relational
• Instead of 1 record at a time, files or sets
at a time
Select PID, location
From Customer, Supplier
Where supplierID = SID
• Problems?
1980's Object-Oriented DBs
• Represent real-world entities as objects
– Objects and relationships
– Classes and instances
– Specialization /Generalization
– Inheritance, methods
• Similar to network model
Object-Oriented DBs
Product ID
type
price
Supplier
Supplier ID
location
Object-Oriented DBs
• To query use ObjectSQL – dot notation
Select ProductID, Supplier.location
From Product
• Most versions based on relational
• Problems?
1990’s – Issues/Advances
• Object-Relational DBs – extend relational
– Keep relational, but add OO features
• Additional Issues:
– Distributed DBs
– Data mining and data warehouses
– Real-time Databases
2000’s – DB Issues/Advances
•
•
•
•
•
Data integration
Database Security
Mobile Databases
Data-intensive computing - Data Grids
NoSQL
– Sensor Databases
– Web Databases & Information Retrieval
– XML Databases (hierarchical)
2010’s Issues
• Cloud computing - where do databases fit
in?
– Information retrieval / Text processing
• BIG Data
•
•
•
•
Green Computing
Data driven decisions
Data is the next frontier
Other suggestions?