NAME
dyndb - a dynamical database
DESCRIPTION
A dyndb is database with 1 key
<-> 1 value relation. The dyndb package contains fast
and reliable tools to create, change and read that database.
It also contains the library functions used by that
programs.
COPYRIGHT
The tools are published
under the GNU General Public License, Version 2. The library
functions are published under the GNU Lesser General Public
License.
Some auxiliary source files have been published
under different libraries. None of them affect the library
functions.
The file LICENSES in the source
distribution contains a listing of the licenses.
CAVEATS
The dyndb database has a number of
limitation:
There may only be one process writing
to any database file at a given time (although many other
processes may read during that time). An application may use
file locking to get around that limitation. The database
size is limited to 31 bits (2gigabytes). Keys and data are
limited to 31 bits also. Hash, key length, data length and
pointers are stored in little endian byte order. Although
it's possible to delete elements there is not way to reclaim
the disk space of the records: deleted data is unavailable,
not freed. The default table layout is targetted to offer
nice performance for about 50000 to 100000 elements (note
that your systems seek and read performance might limit the
performance even more). Above that the performance will
degrade drastically. Keys do not need to be unique. The
library functions deal with this, but the tools do not
provide a way to return more than one record. The order of
the records is not preserved.
AUTHOR
Uwe Ohse, uwe@ohse.de
SEE ALSO
dyndbmake(1),
dyndbget(1),
dyndbadd(1),
dyndbdel(1),
libdyndb(3),
for general
information, and
for a
format specification.