eXtremeDB Embedded User's Guide

For application developers new to eXtremeDB we recommend reading the fundamental concepts and the Getting Started topics, then building and running the SDK samples to become familiar with eXtremeDB essentials and the APIs appropriate for your development environment. The Product Overview and Objectives pages provide a detailed introduction to eXtremeDB features and extension modules.

The following topics explain general principles of eXtremeDB application design and implementation:

Database schema Defining the database schema
Runtime Control Starting and terminating the eXtremeDB runtime; setting runtime options and fatal error handler
Database Control Creating and closing, connecting to and disconnecting from databases; monitoring and extending memory, backing up and loading database snapshots
Database Object Interfaces Creating and modifying database objects
Creating Class Relationships Implementation techniques for connecting (joining) database classes
Indexes and Cursors Defining and using indexes for optimal data access and managing cursors representing selections of database objects
Search Methods Implementing lookups of individual database objects and searches for selections of objects
Events and TTL Database event triggers and automatic deletion of obsolete database objects through the Time-To-Live (TTL) feature
Concurrency and Transaction Control Strategies and implementation details for managing database transactions and concurrency
Database Backup and Restore Incremental online backup and restore and file based backup of in-memory and persistent databases
Data Export and Import Backup and restore, saving and loading database snapshots, metadata and dictionaries, XML export / import
Transaction Logging Using Transaction Logging for persistence, recovery and "Data Relay"
Vertical_Data_Storage Using the sequence data type to store data in vertical or columnar form
Network_Communications Managing network connections and security
Monitoring Storage Database statistics interfaces and monitoring storage space consumption
Persistent Database IO How eXtremeDB manages cache and persistent media I/O operations
Transaction Log Files Setting transaction log file type and parameters
Error Handling Return status and error codes and how to handle fatal and non-fatal runtime errors
Tracing_Debugging_Framework Output tracing and debugging information to a log file
Database Recovery Database recovery from failed processes
Database Encryption Encrypting database memory
Database Compression Using data compression techniques
Database Design and Programming Considerations Database design considerations with respect to eXtremeDB
Programming Examples Example code illustrating the use of eXtremeDB APIs
Shared Memory Applications Use of databases in shared memory for multi-process applications
Uniform Database Access Uniform Database Access (UDA) - a predefined generic navigational API to access eXtremeDB databases
Database Browser An HTML-based database browser / editor that can be used to examine any eXtremeDB database.
Optimizations Techniques and tips for optimizing eXtremeDB Embedded database application performance