Novell Home

FLAIM Architecture

From Developer Community

FLAIM Architecture

FLAIM is a library whose functions may be called from within an application, as illustrated below:


Image:FLAIMArchitecture.png

When a FLAIM API is called, the API will generally call a variety of internal functions to perform the requested operation(s). Operations that retrieve or update data in the database will ultimately access that data through the cache manager module, which fetches blocks into cache from disk. In addition to the block cache, there is a record cache. Record cache holds record objects which have been constructed from data in block cache. Having a record cache makes it possible for FLAIM to avoid the overhead of continually constructing record objects from data in block cache. Some operations, such as query operations, may access records from record cache as well as blocks from block cache.

Note that FLAIM employs a platform abstraction layer to read data from disk and write data to disk. The abstraction layer also contains functions for performing memory management, mutexes, semaphores, atomic operations, and thread management.

As is illustrated, a FLAIM database on disk is comprised of multiple files, a control file, one or more data files, and one or more RFL (roll-forward log) files.

For more detailed information on the FLAIM APIs, please see the FLAIM Documentation.

XFLAIM Architecture

Similar to FLAIM, XFLAIM is also a library whose functions may be called from within an application, as illustrated below:


Image:XFLAIMArchitecture.png

When an XFLAIM API is called, the API will generally call a variety of internal functions to perform the requested operation(s). Operations that retrieve or update data in the database will ultimately access that data through the cache manager module, which fetches blocks into cache from disk. In addition to the block cache, there is a node cache. Node cache holds DOM node objects which have been constructed from data in block cache. Having a node cache makes it possible for XFLAIM to avoid the overhead of continually constructing DOM node objects from data in block cache. Some operations, such as query operations, may access nodes from node cache as well as blocks from block cache.

Note that XFLAIM employs a platform abstraction layer to read data from disk and write data to disk. The abstraction layer also contains functions for performing memory management, mutexes, semaphores, atomic operations, and thread management.

As is illustrated, an XFLAIM database on disk is comprised of multiple files, a control file, one or more data files, and one or more RFL (roll-forward log) files.

For more detailed information on the XFLAIM APIs, please see the XFLAIM Documentation.

Navigation



Table of Contents


Contents

Novell® Making IT Work As One

© 2009 Novell, Inc. All Rights Reserved.