Component Database Systems

M. Tamer zsu
Bin Yao
University of Waterloo
The componentization of database management system (DBMS) services is a topic of recent interest and discussion (Silberschatz & Zdonik 1996). The issue arises because of the divergent requirements imposed on DBMSs by the new application domains that the technology has started to penetrate. Applications such as computer-aided design (CAD) and computer-aided manufacturing (CAM), software development, office information systems, collaborative design, and multimedia information systems have widely varying requirements (e.g., see zsu 1996 for a discussion of the requirements of multimedia information systems). Building general-purpose DBMSs that can address these varying demands requires either that the systems themselves be customizable or that more-open system architectures be developed that lend themselves to the integration of different DBMSs with different requirements. In either case, componentization is a necessity, even though the granularity of components is different. In the first case, each component provides one DBMS function, leading to a customizable DBMS with plug-and-play components; in the second case, each component is itself a DBMS, leading to an interoperable system.
Even though the first type of componentization has been discussed in literature, there are no known DBMS implementations that use componentization extensively (i.e., more than ordinary code modularization). However, there are many examples of interoperable DBMSs.
One of the fundamental requirements for building these systems is the availability of a proper infrastructure and a methodology. In this chapter, we start with the basic assumption that object technology provides the most promising methodology for building...