Design and Implementation of an Extensible Database Management System Supporting User Defined Data Types and Functions.

Volker Linnemann, Klaus Küspert, Peter Dadam, Peter Pistor, R. Erbe, Alfons Kemper, Norbert Südkamp, Georg Walch, Mechtild Wallrath: Design and Implementation of an Extensible Database Management System Supporting User Defined Data Types and Functions. VLDB 1988: 294-305
  author    = {Volker Linnemann and
               Klaus K{\"u}spert and
               Peter Dadam and
               Peter Pistor and
               R. Erbe and
               Alfons Kemper and
               Norbert S{\"u}dkamp and
               Georg Walch and
               Mechtild Wallrath},
  editor    = {Fran\c{c}ois Bancilhon and
               David J. DeWitt},
  title     = {Design and Implementation of an Extensible Database Management
               System Supporting User Defined Data Types and Functions},
  booktitle = {Fourteenth International Conference on Very Large Data Bases,
               August 29 - September 1, 1988, Los Angeles, California, USA,
  publisher = {Morgan Kaufmann},
  year      = {1988},
  isbn      = {0-934613-75-3},
  pages     = {294-305},
  ee        = {db/conf/vldb/LinnemannKDPEKSWW88.html},
  crossref  = {DBLP:conf/vldb/88},
  bibsource = {DBLP,}


Current query languages for relational databases usually are fixed, i.e. they provide only a fixed set of data types and operations. It is usually not possible to extend this set by user defined data types or functions. This is a major drawback especially in advanced applications like engineering applications or office automation. In these areas special data types and special functions are needed quite frequently, e.g. a data type for matrices and a function for matrix multiplication. Since matrices and matrix multiplication are not provided in conventional query languages, the user has to model matrices by low level constructs as, for example, byte strings, and to write a rather cumbersome application program in a conventional programming language for interpreting these byte strings as matrices and for multiplying them. Another example of a missing function is even as simple as the square root function. Therefore, a mechanism is needed that allows the user to define his own data types and functions and add them somehow to the DBMS such that they can be used within the query language in the same way as a normal built-in function on basic data types. This paper describes an extension mechanism for data types and functions that has been implemented at the IBM Scientific Center in Heidelberg. The mechanism is based upon HDBL, an SQL based query language for complex objects. The functions themselves are written in a conventional programming language, in our case PASCAL, thus allowing to formulate general algorithms. One important aspect is the interface between the data types of the DBMS on the one side and the data types of the programming language on the other side. In our case, this mapping is more complicated than in other approaches because our type system supports complex objects directly and not via long strings as other authors do. Moreover, we use the PASCAL type system to a large extend in order to allow type checking at compile time.

Copyright © 1988 by the VLDB Endowment. Permission to copy without fee all or part of this material is granted provided that the copies are not made or distributed for direct commercial advantage, the VLDB copyright notice and the title of the publication and its date appear, and notice is given that copying is by the permission of the Very Large Data Base Endowment. To copy otherwise, or to republish, requires a fee and/or special permission from the Endowment.

Online Paper

ACM SIGMOD Anthology

CDROM Version: Load the CDROM "Volume 1 Issue 4, VLDB '75-'88" and ... DVD Version: Load ACM SIGMOD Anthology DVD 1" and ... BibTeX

Printed Edition

François Bancilhon, David J. DeWitt (Eds.): Fourteenth International Conference on Very Large Data Bases, August 29 - September 1, 1988, Los Angeles, California, USA, Proceedings. Morgan Kaufmann 1988, ISBN 0-934613-75-3


Serge Abiteboul, Nicole Bidoit: Non First Normal Form Relations: An Algebra Allowing Data Restructuring. J. Comput. Syst. Sci. 33(3): 361-393(1986) BibTeX
Antonio Albano, Luca Cardelli, Renzo Orsini: Galileo: A Strongly-Typed, Interactive Conceptual Language. ACM Trans. Database Syst. 10(2): 230-260(1985) BibTeX
Michael J. Carey, David J. DeWitt, Daniel Frank, Goetz Graefe, M. Muralikrishna, Joel E. Richardson, Eugene J. Shekita: The Architecture of the EXODUS Extensible DBMS. OODBS 1986: 52-65 BibTeX
Donald D. Chamberlin, Morton M. Astrahan, W. Frank King III, Raymond A. Lorie, James W. Mehl, Thomas G. Price, Mario Schkolnick, Patricia G. Selinger, Donald R. Slutz, Bradford W. Wade, Robert A. Yost: Support for Repetitive Transactions and Ad Hoc Queries in System R. ACM Trans. Database Syst. 6(1): 70-94(1981) BibTeX
Umeshwar Dayal, Frank Manola, Alejandro P. Buchmann, Upen S. Chakravarthy, David Goldhirsch, Sandra Heiler, Jack A. Orenstein, Arnon Rosenthal: Simplifying Complex Objects: The PROBE Approach to Modelling and Querying Them. BTW 1987: 17-37 BibTeX
Peter Dadam, Klaus Küspert, F. Andersen, Henk M. Blanken, R. Erbe, Jürgen Günauer, Vincent Y. Lum, Peter Pistor, Georg Walch: A DBMS Prototype to Support Extended NF2 Relations: An Integrated View on Flat Tables and Hierarchies. SIGMOD Conference 1986: 356-367 BibTeX
Klaus R. Dittrich: Object-Oriented Database Systems: The Notion and the Issue. OODBS 1986: 2-4 BibTeX
R. Erbe, Norbert Südkamp: An Application Program Interface for a Complex Object Database. JCDKB 1988: 211-226 BibTeX
David Goldhirsch, Jack A. Orenstein: Extensibility in the PROBE Database System. IEEE Data Eng. Bull. 10(2): 24-31(1987) BibTeX
Theo Härder, Klaus Meyer-Wegener, Bernhard Mitschang, Andrea Sikeler: PRIMA - a DBMS Prototype Supporting Engineering Applications. VLDB 1987: 433-442 BibTeX
Roger L. Haskin, Raymond A. Lorie: On Extending the Functions of a Relational Database System. SIGMOD Conference 1982: 207-212 BibTeX
Klaus Küspert, Peter Dadam, Jürgen Günauer: Cooperative Object Buffer Management in the Advanced Information Management Prototype. VLDB 1987: 483-492 BibTeX
Alfons Kemper, Peter C. Lockemann, Mechtild Wallrath: An Object-Oriented Database System for Engineering Applications. SIGMOD Conference 1987: 299-310 BibTeX
Winfried Lamersdorf: Recursive Data Models for Non-Conventional Database Applications. ICDE 1984: 143-150 BibTeX
Volker Linnemann: Non First Normal Form Relations and Recursive Queries: An SQL-Based Approach. ICDE 1987: 591-598 BibTeX
Bruce G. Lindsay, John McPherson, Hamid Pirahesh: A Data Management Extension Architecture. SIGMOD Conference 1987: 220-226 BibTeX
Vincent Y. Lum, Peter Dadam, R. Erbe, Jürgen Günauer, Peter Pistor, Georg Walch, H. Werner, John Woodfill: Designing DBMS Support for the Temporal Dimension. SIGMOD Conference 1984: 115-130 BibTeX
Vincent Y. Lum, Peter Dadam, R. Erbe, Jürgen Günauer, Peter Pistor, Georg Walch, H. Werner, John Woodfill: Design of an Integrated DBMS to Support Advanced Applications. FODO 1985: 31-49 BibTeX
John Mylopoulos, Philip A. Bernstein, Harry K. T. Wong: A Language Facility for Designing Database-Intensive Applications. ACM Trans. Database Syst. 5(2): 185-207(1980) BibTeX
Peter Pistor, F. Andersen: Designing A Generalized NF2 Model with an SQL-Type Language Interface. VLDB 1986: 278-285 BibTeX
H.-Bernhard Paul, Hans-Jörg Schek, Marc H. Scholl, Gerhard Weikum, Uwe Deppisch: Architecture and Implementation of the Darmstadt Database Kernel System. SIGMOD Conference 1987: 196-207 BibTeX
Peter Pistor, Roland Traunmüller: A database language for sets, lists and tables. Inf. Syst. 11(4): 323-336(1986) BibTeX
Mark A. Roth, Henry F. Korth, Don S. Batory: SQL/NF: a query language for ¬1 NF relational databases. Inf. Syst. 12(1): 99-114(1987) BibTeX
Lawrence A. Rowe, Michael Stonebraker: The POSTGRES Data Model. VLDB 1987: 83-96 BibTeX
Peter M. Schwarz, Walter Chang, Johann Christoph Freytag, Guy M. Lohman, John McPherson, C. Mohan, Hamid Pirahesh: Extensibility in the Starburst Database System. OODBS 1986: 85-92 BibTeX
Joachim W. Schmidt: Some High Level Language Constructs for Data of Type Relation. ACM Trans. Database Syst. 2(3): 247-261(1977) BibTeX
Hans-Jörg Schek, Marc H. Scholl: The relational model with relation-valued attributes. Inf. Syst. 11(2): 137-147(1986) BibTeX
Michael Stonebraker, Erika Anderson, Eric N. Hanson, W. Bradley Rubenstein: Quel as a Data Type. SIGMOD Conference 1984: 208-214 BibTeX
Michael Stonebraker: Inclusion of New Types in Relational Data Base Systems. ICDE 1986: 262-269 BibTeX
Michael Stonebraker, Lawrence A. Rowe: The Design of Postgres. SIGMOD Conference 1986: 340-355 BibTeX
Michael Stonebraker, Jeff Anton, Eric N. Hanson: Extending a Database System with Procedures. ACM Trans. Database Syst. 12(3): 350-376(1987) BibTeX
Patrick Valduriez, Setrag Khoshafian, George P. Copeland: Implementation Techniques of Complex Objects. VLDB 1986: 101-110 BibTeX

Referenced by

  1. Arunprasad P. Marathe, Kenneth Salem: A Language for Manipulating Arrays. VLDB 1997: 46-55
  2. Vibby Gottemukkala, Anant Jhingran, Sriram Padmanabhan: Interfacing Parallel Applications and Parallel Databases. ICDE 1997: 355-364
  3. Max J. Egenhofer: Spatial SQL: A Query and Presentation Language. IEEE Trans. Knowl. Data Eng. 6(1): 86-95(1994)
  4. G. Sudhakar, Ahmed Karmouch, Nicolas D. Georganas: Design and Performance Evaluation Considerations of a Multimedia Medical Database. IEEE Trans. Knowl. Data Eng. 5(5): 888-894(1993)
  5. Bernhard Mitschang, Hamid Pirahesh, Peter Pistor, Bruce G. Lindsay, Norbert Südkamp: SQL/XNF - Processing Composite Objects as Abstractions over Relational Data. ICDE 1993: 272-282
  6. Linda G. DeMichiel, Donald D. Chamberlin, Bruce G. Lindsay, Rakesh Agrawal, Manish Arya: Polyglot: Extensions to Relational Databases for Sharable Types and Functions in a Multi-Language Environment. ICDE 1993: 651-660
  7. Pamela Drew, Roger King, Dennis Heimbigner: A Toolkit for the Incremental Implementation of Heterogeneous Database Management Systems. VLDB J. 1(2): 241-284(1992)
  8. Ludger Becker, Ralf Hartmut Güting: Rule-Based Optimization and Query Processing in an Extensible Geometric Database System. ACM Trans. Database Syst. 17(2): 247-303(1992)
  9. Wolfgang Benn, Christian Kortenbreer, Gunter Schlageter, Xinglin Wu: On Interoperability for KBMS Applications - The Horizontal Integration Task. ICDE 1992: 158-165
  10. Shaul Dar, Narain H. Gehani, H. V. Jagadish: CQL++: A SQL for the Ode Object-Oriented DBMS. EDBT 1992: 201-216
  11. Steve Rozen, Dennis Shasha: A Framework for Automating Physical Database Design. VLDB 1991: 401-411
  12. Jurgen Annevelink: Database Programming Languages: A Functional Approach. SIGMOD Conference 1991: 318-327
  13. Steve Rozen, Dennis Shasha: Rationale and Design of BULK. DBPL 1991: 71-85
  14. Hans-Jörg Schek, H.-Bernhard Paul, Marc H. Scholl, Gerhard Weikum: The DASDBS Project: Objectives, Experiences, and Future Prospects. IEEE Trans. Knowl. Data Eng. 2(1): 25-43(1990)
  15. Norbert Südkamp, Volker Linnemann: Elimination of View and Redundant Variables in a SQL-like Database Language for Extended NF2 Structures. VLDB 1990: 302-313
  16. Ulrich Herrmann, Peter Dadam, Klaus Küspert, E. A. Roman, Gunter Schlageter: A Lock Technique for Disjoint and Non-Disjoint Complex Objects. EDBT 1990: 219-237
  17. Gunter Saake, Volker Linnemann, Peter Pistor, Lutz Michael Wegner: Sorting, Grouping and Duplicate Elimination in the Advanced Information Management Prototype. VLDB 1989: 307-316
ACM SIGMOD Anthology - DBLP: [Home | Search: Author, Title | Conferences | Journals]
VLDB Proceedings: Copyright © by VLDB Endowment,
ACM SIGMOD Anthology: Copyright © by ACM (, Corrections:
DBLP: Copyright © by Michael Ley (, last change: Sat May 16 23:45:38 2009