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 department customer Employee project invoice store dep super worker invoice_line contact
Hierarchical DB Used pointers Any query through the data followed pointers manipulated 1 row at a time how about many-to-many relationships? Problems?
Late 1960's - Network Model many-to-many relationships more than 1 parent Owner-Member Relationship Instances or Occurrences Problems?
Network example Sales rep customer invoice store invoice _line contact
1970's Relational Model - E.F. Codd Rows and Columns Instead of 1 record at a time, files or sets at a time Easier to write queries Limitations?
Relational example Customer: CID storeID contact Invoice# Sales Rep: SRID Invoice # InvoiceLine
1980's Object-Oriented DBs Represent real-world entities as objects –Objects and relationships –Classes and instances – Specialization /Generalization – Inheritance, methods Similar to hierarchical Most versions based on relational Problems?
1990’s – Extend Relational Object-Relational DBs –Keep relational, but add OO features Additional Issues: –Distributed DBs –Data mining and data warehouses –Real-time Databases
2000’s – Recent Issues Data integration Database Security Web Databases & Information Retrieval XML Databases Mobile Databases Sensor Databases Data-intensive computing (Data Grids) Cloud computing - where do databases fit in?