DBMS Architecture - Still an Open Problem

More than two decades ago, DB researchers faced up to the question of how to design a data-independent database management system (DBMS), that is, a DBMS which offers an appropriate application programming interface (API) to the user and whose architecture is open for permanent evolution. For this purpose, an architectural model based on successive data abstraction steps of record-oriented data was proposed as kind of a standard and later refined to a five-layer hierarchical DBMS model. We review the basic concepts and implementation techniques of this model and survey the major improvements achieved in the system layers to date. Furthermore, we consider the interplay of the layered model with the transactional ACID properties and again outline the progress obtained. In the course of the last 20 years, this DBMS architecture was challenged by a variety of new requirements and changes as far as processing environments, data types, functional extensions, heterogeneity, autonomy, scalability, etc. are concerned. We identify the cases which can be adjusted by our standard system model and which need major extensions or other types of system models.

[1]  Andreas Reuter,et al.  Architektur von Datenbanksystemen für Non-Standard-Anwendungen , 1985, BTW.

[2]  Irving L. Traiger,et al.  A history and evaluation of System R , 1981, CACM.

[3]  Erhard Rahm,et al.  Mehrrechner-Datenbanksysteme - Grundlagen der verteilten und parallelen Datenbankverarbeitung , 1994 .

[4]  Patricia G. Selinger,et al.  Support for repetitive transactions and ad hoc queries in System R , 1981, TODS.

[5]  Goetz Graefe,et al.  Query evaluation techniques for large databases , 1993, CSUR.

[6]  C. Mohan,et al.  ARIES/KVL: A Key-Value Locking Method for Concurrency Control of Multiaction Transactions Operating on B-Tree Indexes , 1990, VLDB.

[7]  Sven Tafvelin Sequential Files on Cycling Storage , 1974, IFIP Congress.

[8]  Andreas Reuter,et al.  Principles of transaction-oriented database recovery , 1983, CSUR.

[9]  C. J. Date An Introduction to Database Systems, 6th Edition , 1995 .

[10]  Giovanni Maria Sacco,et al.  A Mechanism for Managing the Buffer Pool in a Relational Database System Using the Hot Set Model , 1982, VLDB.

[11]  Theo Härder,et al.  Fine-Grained Management of Natively Stored XML Documents , 2004 .

[12]  Bernhard Mitschang,et al.  Advanced data processing in KRISYS: modeling concepts, implementation techniques, and client/server issues , 1998, The VLDB Journal.

[13]  David Lorge Parnas,et al.  Use of the concept of transparency in the design of hierarchically structured systems , 1975, CACM.

[14]  Hans-Peter Kriegel,et al.  Efficient processing of spatial joins using R-trees , 1993, SIGMOD Conference.

[15]  Praveen Seshadri,et al.  The VLDB Journal manuscript No. (will be inserted by the editor) Enhanced Abstract Data Types in Object-Relational Databases , 1998 .

[16]  Michael Peter Haustein,et al.  Eine XML-Programmierschnittstelle zur transaktionsgeschützten Kombination von DOM, SAX und XQuery , 2005, BTW.

[17]  Brian Randell,et al.  Reliability Issues in Computing System Design , 1978, CSUR.

[18]  Raymond A. Lorie,et al.  Physical integrity in a large segmented database , 1977, TODS.

[19]  Randy H. Katz,et al.  A case for redundant arrays of inexpensive disks (RAID) , 1988, SIGMOD '88.

[20]  Jonathan Goldstein,et al.  Relaxed currency and consistency: how to say "good enough" in SQL , 2004, SIGMOD '04.

[21]  Mendel Rosenblum,et al.  The design and implementation of a log-structured file system , 1991, SOSP '91.

[22]  Erhard Rahm,et al.  Datenbanksysteme: Konzepte und Techniken der Implementierung, 2. Auflage , 2001 .

[23]  Albrecht Blaser Die BTW im Wandel der Datenbank-Zeiten , 1995, Datenbank Rundbr..

[24]  Oliver Günther,et al.  Multidimensional access methods , 1998, CSUR.

[25]  Gerhard Weikum,et al.  I/O-Parallelität und Fehlertoleranz in Disk-Arrays, Teil 1: I/O-Parallelität , 1993, Inform. Spektrum.

[26]  Hamid Pirahesh,et al.  ARIES: a transaction recovery method supporting fine-granularity locking and partial rollbacks using write-ahead logging , 1998 .

[27]  RosenblumMendel,et al.  The design and implementation of a log-structured file system , 1991 .

[28]  Hamid Pirahesh,et al.  ROX: Relational Over XML , 2004, VLDB.

[29]  Ulrich Marder,et al.  Systempufferverwaltung in Multimedia-Datenbanksystemen , 1995, BTW.

[30]  Gerhard Weikum,et al.  Konzeption und Realisierung einer mengenorientierten Seitenschnittstelle zum effizienten Zugriff auf Komplexe Objekte , 1987, BTW.

[31]  Leonard D. Shapiro,et al.  Join processing in database systems with large main memories , 1986, TODS.

[32]  Hans-Jörg Schek,et al.  The DASDBS Project: Objectives, Experiences, and Future Prospects , 1990, IEEE Trans. Knowl. Data Eng..

[33]  Douglas Comer,et al.  Ubiquitous B-Tree , 1979, CSUR.

[34]  D. L. Parnas,et al.  On the criteria to be used in decomposing systems into modules , 1972, Software Pioneers.

[35]  Rudolf Bayer,et al.  The Universal B-Tree for Multidimensional Indexing: general Concepts , 1997, WWCA.

[36]  Raymond A. Lorie,et al.  The Compilation of a High Level Data Language , 1979, Research Report / RJ / IBM / San Jose, California.

[37]  Michael J. Carey,et al.  Reducing the Braking Distance of an SQL Query Engine , 1998, VLDB.

[38]  Theo Härder,et al.  Query Processing in Constraint-Based Database Caches , 2004, IEEE Data Eng. Bull..

[39]  Oliver Günther,et al.  Efficient computation of spatial joins , 1993, Proceedings of IEEE 9th International Conference on Data Engineering.

[40]  C. Mohan,et al.  Repeating History Beyond ARIES , 1999, VLDB.

[41]  Klaus Meyer-Wegener,et al.  Processing and Transaction Concepts for Cooperation of Engineering Workstations and a Database Server , 1988, Data Knowl. Eng..

[42]  Bernhard Mitschang Anfrageverarbeitung in Datenbanksystemen - Entwurfs- und Implementierungskonzepte , 1995 .

[43]  Morton M. Astrahan A history and evaluation of system R , 1981, Perform. Evaluation.

[44]  Donald D. Chamberlin,et al.  Access Path Selection in a Relational Database Management System , 1989 .

[45]  Hans-Jörg Schek,et al.  Erweiterbarkeit, Kooperation, Föderation von Datenbanksystemen , 1991, BTW.

[46]  Gerhard Weikum,et al.  I/O-Parallelität und Fehlertoleranz in Disk-Arrays, Teil 2: Fehlertoleranz , 1993, Inform. Spektrum.

[47]  Erhard Rahm,et al.  Datenbanksysteme: Konzepte und Techniken der Implementierung , 1999 .

[48]  Alexander Thomasian,et al.  Concurrency control: methods, performance, and analysis , 1998, CSUR.

[49]  Matthias Jarke,et al.  Query Optimization in Database Systems , 1984, CSUR.

[50]  Bruce G. Lindsay,et al.  A retrospective of R*: A distributed database management system , 1987, Proceedings of the IEEE.

[51]  Marc H. Scholl,et al.  Transactional information systems: theory, algorithms, and the practice of concurrency control and recovery , 2001, SGMD.

[52]  Jim Gray The next database revolution , 2004, SIGMOD '04.

[53]  Andreas Reuter,et al.  Transaction Processing: Concepts and Techniques , 1992 .

[54]  Yannis E. Ioannidis,et al.  The History of Histograms (abridged) , 2003, VLDB.

[55]  Gottfried Vossen,et al.  Transactional Information Systems: Theory, Algorithms, and the Practice of Concurrency Control and Recovery , 2002 .

[56]  Hamid Pirahesh,et al.  Cache Tables: Paving the Way for an Adaptive Database Cache , 2003, VLDB.

[57]  David J. DeWitt,et al.  Parallel database systems: the future of high performance database systems , 1992, CACM.

[58]  Gerhard Weikum,et al.  The LRU-K page replacement algorithm for database disk buffering , 1993, SIGMOD Conference.

[59]  Vishu Krishnamurthy,et al.  Performance Challenges in Object-Relational DBMSs , 1999, IEEE Data Eng. Bull..

[60]  Patricia G. Selinger,et al.  Access path selection in a relational database management system , 1979, SIGMOD '79.

[61]  Irving L. Traiger,et al.  System R: An Architectural Overview , 1999, IBM Syst. J..

[62]  Gerhard Weikum,et al.  Self-tuning Database Technology and Information Services: from Wishful Thinking to Viable Engineering , 2002, VLDB.

[63]  Daniela Florescu,et al.  Storing and Querying XML Data using an RDMBS , 1999, IEEE Data Eng. Bull..