SECONDO: An Extensible DBMS
Architecture and Prototype

Ralf Hartmut Güting, Thomas Behr, Victor Teixeira de Almeida,  Zhiming Ding,
Frank Hoffmann, and Markus Spiekermann

LG Datenbanksysteme für neue Anwendungen, FB Informatik,
Fernuniversität Hagen, D-58084 Hagen, Germany

Abstract: We describe SECONDO, an extensible DBMS platform suitable for building research prototypes and for teaching architecture and implementation of database systems. It does not have a fixed data model, but is open for implementation of new models. SECONDO consists of three major components which can be used together or independently: (i) the kernel, which offers query processing over a set of implemented algebras, each offering some type constructors and operators, (ii) the optimizer, which implements the essential part of an SQL-like language, and (iii) the graphical user interface which is extensible by viewers for new data types and which provides a sophisticated viewer for spatial and spatio-temporal (moving) objects. Examples of algebras implemented in SECONDO are relations, spatial data types, R-trees, or midi objects (music files), each with suitable operations. The kernel is extensible by algebras, the optimizer by optimization rules and cost functions, and the GUI by viewers and display functions.

A highlight of the description is a new algorithm for conjunctive query optimization which is remarkably simple, yet performs very well. We also emphasize a technique for selectivity estimation suitable for an extensible environment with complex algebras for non-standard data types.

Keywords: SECONDO, algebra modules, abstract data types, extensibility, query optimization, predicate order graph, selectivity estimation, sampling