3
Traditional File-Based Approach
• Collection of applications that each define and manage their own files • File technology was the first attempt to computerize manual filing systems
• File: collection of records containing logically-related data (Pascal’s files of • It is an obsolete technology, except for applications that do not require DBMS func-
records, C++’s “struct” or “class” declarations, COBOL’s Data Division) tions. Even for those problems, when efficiency is not crucial and size is not too big,
it is often worth considering simple database software (like, e.g., ACCESS).
• Tight integration between program and data (files)
• Each enterprise function was responsible for its own data and accessed it with their
– physical storage structure visible in application code (e.g., ISAM, VSAM)
own programs
– run-time performance can (and must) be programmed
• File-based approach required much work from application programmers
4 5
• CODASYL (network) database systems (e.g., IDS, IDMS, TOTAL, ADABAS, PHO- Novelty and Importance of the Relational Model
LAS)
• Example of data dependence: physical location of fields within records visible in pro- • Simplicity of basic concepts
grams
• Simple theoretical framework
• About pointers:
• Emergence of notion of data model
– pointers provide more explicit integration links (hierarchy, network) than rela-
tions • Data independence: separate universe of application from that of implemen-
tation
– confusion between logical and physical pointers was the problem: the relational
model established and demonstrated the virtues of data independence • Emergence of disciplined DB design
– somewhat cleaner pointers came back with object technology
• Validation of a declarative, high-level approach to data management
• Construction of powerful DBMS software
• New architectures
• Standards
• Emergence of the notion of data model, quickly leading to semantic data models • But the web is making 4GLs and business forms history ...
with more semantics than the relational model, and a clean a posteriori definition of
• PC systems, competing with the larger DBMSs for lower-end applications
network and hierarchic data models. Data models include the definition of integrity
at the application-domain level, as a part of database design.
• Data independence: insulation of users from physical DB design and access opti-
mization; all general trend in informatics
7
• Emergence of disciplined DB design: a more semantic or conceptual view of infor-
mation structures (e.g., E-R) on top of the relational schema significantly simplifies
analysis and design process
• Design of high-level interactive database languages, based on set-at-a-time, non-
procedural operations, high-level operations (a first in the DB world): demonstrate
that a less procedural style of data manipulation was not only practically feasible but
also highly productive
• Construction of efficient DBMS software, in particular efficient query optimizers,
transaction management for multiple users (concurrency control), reliability and fail- Relational Market ...
ure recovery
• SQL has been overemphasized, overadvertised, has become inevitable (“COBOL
• New architectures: database machines, client-server, distributed databases, client
tools, 4GLs of the 90’s”)
9
Weaknesses of Relational Technology
10
• Complex and application-dependent data types simplify application development • Steady improvement in price/performance ratio of hardware and supporting ar-
chitectures
• Object identity, for object chaining, sharing
• “Software crisis”:
• Data encapsulation (ADTs)
– quality of application development is becoming a major concern
– some behavior naturally goes with data
– maintenance dominates overall development costs ⇒ reuse
– stable public interface for objects
– application-development methodology is improving
– greater stability, easier evolution
• Open systems ⇒ variety of system architectures
• Generalization and inheritance, for reuse, easier adaptation
• Transition to objects has become inevitable
• Polymorphism, for simpler programming, easier evolution
13
12
Application Context
14
OODBMS Market
15
• Gradually appeared in the early 90’s
• Vendors: Object Design, Objectivity, Versant, Computer Associates (Jasmine),
Ardent (O2 )
• Niche market (about 100 times smaller than relational market, 100 M vs 10 B)
• Market development hindered by existing relational base
17
• Goals
– synthesis of the best of RDBMSs and OODBMSs, i.e., flexibility of data
model and performance of DBMS functions OR DBMS Market
– saveguard RDBMS investments
• Differences with RDBMSs • Main relational vendors: Informix, Oracle, Sybase, IBM, Microsoft
– extensible type system (application-dependent new types and functions) • Roughly similar products
– OO inheritance and polymorphism • Big business!
– better integration with PLs than SQL-92
• Differences with OODBMSs
– separate declarative data sublanguage (instead of smooth integration between
data language and PL)
18 20
Recent Evolutions
Problems with ORDBMS
• RDBMS vendors have maintained their strong position
• Hybrid approach • RDBMS are evolving into object-relational systems
• Technological integration without new concepts • New RDBMS developments ensure downward compatibility
• Weak on inheritance and polymorphism • Microsoft has entered the mainstream DB server market
• No sound theoretical foundations • OODBMS vendors have not moved from niche markets and have not displaced
• Bound to compromising RDBMS
19 21
• Object technology
• Conceptual modeling
• Enterprise resource planning (ERP)
• Data mining
• Data warehouses
• Knowledge management, competitive intelligence
• Interoperability, heterogeneity, integration, ontologies, multidatabases
• Object-relational systems
• Workflow management
22