Next: , Previous: , Up: nonblonde   [Contents][Index]


1 Overview

nonblonde is a key/data database library. nonblonde databases are organized in tables, in turn sorted associative arrays that pair data with unique keys.

nonblonde tables are backed by b-trees. The nodes of the latter are (uncommonly for database software) organized as critical bit trees. The internal organization is naturally suited for variable length and possibly large size keys, and makes the b-tree data structure a radix based one (as opposed to a comparison based one). It is the b-tree radix nature that disallow duplicate entries and client key comparison methods.

There is no support for concurrent access and no file or data locking is performed. The latter is by choice, the former is for performance reasons.

Concurrent transactions are not supported, also for performance reasons.

Transactionality is nonetheless a feature of the nonblonde databases, and indeed, it is the reason why multiple tables are allowed per database. The client applications would perform any number of modifications in the tables of a database and then commit the changes at once. From outside the change sequences would appear as done atomically, and there’d be no moment at which partially executed transactions can be observed.

The databases require some form of continuous or periodic administration.