Prev | Pervasive Products and Services | Next |
Database Architecture
Conceptually, the architecture of most Database Management Systems (DBMS) is divided into an internal layer and a conceptual layer as shown below. The internal layer provides low-level database functions such as physical data management, data caching, transaction processing, and data integrity enforcement. The conceptual layer implements the data abstraction required for the specific data model; in other words, it provides a representation of the data, as well as the definitions and functions necessary to translate between the layers.
Figure 5-1 General DBMS ArchitectureThe MicroKernel Database Architecture expands on this model, as shown in Figure 5-2. The MicroKernel provides the low-level functions of the internal layer, and the plug-in access modules (such as the SRDE, Btrieve, or both) provide the conceptual layers. Multiple access modules can connect to a single MicroKernel Database Engine and share concurrent access to data files.
Data is stored in MicroKernel format, which is independent of the data model, operating system, and hardware platform. Applications using any Pervasive Software access method can concurrently access data through the MicroKernel. Also, in a client/server environment, applications running on different client platforms can share access to the data files. You can configure the location of database engine components within a network, allowing applications to scale from standalone to client/server operation transparently, without requiring application changes.
Figure 5-2 MicroKernel Database ArchitectureThe MicroKernel provides low-level data management services for the access modules, such as the following:
- Physical data access
- Transaction processing and durability
- Data integrity enforcement
- Referential integrity enforcement
- Data caching
- Logging
In addition, the MicroKernel makes efficient use of disk space with data compression, variable length data management, and other functions. The access modules are implementations of specific data models; they provide appropriate data structures and access techniques. (See Chapter 3, Database Models, for more information about different models.) Access modules receive requests from applications and make calls to the MicroKernel to perform the required core data operations.
Prev Product Architecture |
Contents Up | Next The Pervasive.SQL Database Engines |