Component Database Systems

Paul Brown
Informix Corp.
A component database management system (DBMS) is a systems software framework that application developers can extend by embedding modules of programming logic in it. These extensions implement database objects such as new data types, application-level object classes, analytic algorithms, and external data-access facilities. An object-relational DBMS (ORDBMS) is one kind of component DBMS. While early ORDBMSs were obliged to create their own component models and proprietary interfaces, in recent times the trend has been to adopt open standards such as Microsoft's Component Object Model (COM), SunSoft's Enterprise JavaBeans (EJB), and the Object Management Group's Common Object Request Broker Architecture (CORBA). What distinguishes an ORDBMS from other component frameworks, such as object-oriented DBMSs, middleware (e.g., transaction-processing monitors), and general-purpose application servers, is the way that, once integrated within the ORDBMS, components are organized and manipulated using a declarative database language, instead of a procedural programming language.
A distributed ORDBMS differs from a single-site ORDBMS in that the objects within it both the persistent object data and logic implementing the extensions are physically distributed across a set of network-connected computer systems (called nodes of the overall system). As part of its runtime operations, the distributed system moves data and logic between nodes to answer user queries as efficiently as possible. We illustrate this idea in Figure 2.1.
Ideally, the fact of this physical dispersal is not apparent to users and developers, a property known as location transparency. Queries in a distributed ORDBMS...