The PRIMA-DBMS
MotivationComplex applications, such as design applications, AI applications, and even enhanced business applications provoked a lot of research in and evaluation of enhanced data models and query languages. The reason for this is that those applications can benefit significantly from DBMS that efficiently support complex objec ts.Basically, there are three orthogonal measures in order to meet the necessary performance requirements. Firstly, query processing can be tremendously influenced by query optimization. Secondly, efficient evaluation of the optimized query plans depends on a high performance query evaluation system, and thirdly, exploitation of massive storage (e.g. cached or materialized complex objects, access structures) complements the previous tw o. Nowadays and triggered by evolution in hardware (especially the advent of shared-memory multiprocessor machines and high bandwidth networks) parallelism in query processing becomes very attractive 0-8186-2660-7/92$3.00 e 1992 IEEE 38 as a means towards more efficient realization of these performance measures to query processing. Especially for complex-object processing .intra-query parallelism becomes interesting, in addition to the well-known inter-query parallelism.In order to investigate these performance-crucial measures, we have developed a DBMS testbed that is flexible enough to support evaluation and validation of strategies for complex-object processing considering different parallelization levels and different hardware environments. An overview of the basic concepts underlying our DBMS-testbed approach and a brief outlook on some case studies are given in the following chapters.2. Client/server-based architecture for database processing DBMS modularization as well as its embedding into an adequate runtime environment are necessary prerequisites for flexible and parallel database processing. In this chapter we focus on our DBMS architecture and query processing concepts, whereas the subsequent chapter deals with the environment issues.
PRIMA architectureThe architectural framework of the PRIMA system [HMMS87], shown in Fig. 1, is composed of a DBMS kernel with neutral, i.e., application independent, data management functions and an application layer providing application-specific support. The data retrieved from the kernel is embedded into the application layer by means of an object-buffer. The object-buffer manager supports fast pointer-like access to the objects loaded. The kernel is refined by a modular architecture being a prerequisite for flexibility and extensibility of the components and the kernel itself. The kernel provides at its interface a complex-object data model and language [Mi89]. The implementation model behind distinguishes three different layers (i.e. data, access, and storage system) for mapping the complex objects (here called mol-