Database: 1 Design Philosophy
|
GEOS SDK TechDocs|
|
Database |
2 Database Structure
A database manager should be flexible, allowing applications to store a variety of data items. It should be efficient, with minimal overhead in data-access time as well as in memory usage (whether in main memory or in disk space). Ideally, it ought to insulate applications from the details of memory allocation and data referencing. The GEOS database manager meets all of these requirements and several more:
-
Flexible Data Formats
The DB Manager does not care about the content of a DB item. Consequently, a DB item can be anything that can fit in an LMem chunk. An application can use one file to store many different sizes of database item.
-
Speed and Efficiency
The GEOS DB library uses the powerful GEOS memory management, Virtual Memory, and Local Memory routines. These enable it to store and access many database items with a minimal overhead in access time and storage space.
-
Uniform Data-Access Format
Database items are stored in standard GEOS Virtual Memory files. All of the file-access utilities (such as the document control objects) can work unchanged with database files. Furthermore, VM files can contain both ordinary VM blocks and DB items in any combination.
-
Full Group Management
Applications can divide DB items into groups. Access time is improved when items from the same group are accessed in succession. As an alternative, applications can let the DB manager create and assign groups for the items.
-
Sharable Data
Since DB items are stored in VM files, the files can be shared between applications. All of the standard VM synchronization routines work for DB files.
|
GEOS SDK TechDocs|
|
Database |
2 Database Structure