Component Database Management Systems
OLE DB uses the Component Object Model (COM) infrastructure, which reduces unnecessary duplication of services and provides a higher degree of interoperability, not only among diverse information sources but also among existing programming environments and tools. Indeed, OLE DB is the way to access data in a COM environment. OLE DB defines an open, extensible collection of COM interfaces that encapsulate reusable portions of DBMS functionality. These interfaces define the boundaries of DBMS components, such as row containers, query processors, and transaction coordinators, that provide uniform transactional access to diverse information sources. Such components factor a DBMS into a set of cooperating components that consume and produce data through a uniform set of interfaces.
The OLE DB functional areas include data access and updates (rowsets), query processing, catalog information, notifications, transactions, security, and remote data access. By defining a uniform set of interfaces to access data, OLE DB components not only contribute to uniform data access among diverse information sources but also help reduce the application's complexity by enabling developers to use only the DBMS functionality they need. The following illustration shows how an application can employ OLE DB interfaces to initiate actions by a query processor to access different data structures.
A component DBMS architecture using OLE DB interfaces
The sections that follow go into these concepts in detail.