Skip to content
Go to file


Failed to load latest commit information.
Latest commit message
Commit time


WhiteDB (wgdb) README

WhiteDB is a lightweight database library operating fully in main memory. Disk is used only for dumping/restoring database and logging.

Data is persistantly kept in the shared memory area: it is available simultaneously to all processes and is kept intact even if no processes are currently using the database.

WhiteDB has no server process. Data is read and written directly from/to memory, no sockets are used between WhiteDB and the application using WhiteDB.

WhiteDB keeps data as N-tuples: each database record is a tuple of N elements. Each element (record field) may have an arbitrary type amongst the types provided by WhiteDB. Each record field contains exactly one integer (4 bytes or 8 bytes). Datatypes which cannot be fit into one integer are allocated separately and the record field contains an (encoded) pointer to the real data.

WhiteDB is written in pure C in a portable manner and should compile and function without additional porting at least under Linux (gcc) and Windows (native Windows C compiler cl). It has Python and experimental Java bindings.

WhiteDB has several goals:

  • speed

  • portability

  • small footprint and low memory usage

  • usability as an rdf database

  • usability as an extended rdf database, xml database and outside these scopes

  • seamless integration with the Gandalf rule engine (work in progress)

See for up-to-date documentation and other information. This distribution also includes various documentation:

  • Doc/Install.txt - the installation instructions

  • Doc/Tutorial.txt - getting started with the database

  • Doc/Manual.txt - full C API documentation

  • Doc/Utilities.txt - command line utilities and other programs

  • Doc/python.txt - Python API documentation

WhiteDB is licenced under GPL version 3.

if you’re looking for release packages, please don’t use the ones Github generates automatically. Get them from instead.
You can’t perform that action at this time.