aboutsummaryrefslogtreecommitdiffstats
path: root/databases/cdb/pkg-descr
blob: ae9d3972713485b1ec3b2aef2d184f09f718c764 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
cdb is a fast, reliable, lightweight package for creating and reading
constant databases. Its database structure provides several features:

* Fast lookups: A successful lookup in a large database normally takes
  just two disk accesses. An unsuccessful lookup takes only one.
* Low overhead: A database uses 2048 bytes, plus 24 bytes per record,
  plus the space for keys and data.
* No random limits: cdb can handle any database up to 4 gigabytes. There
  are no other restrictions; records don't even have to fit into memory.
  Databases are stored in a machine-independent format.
* Fast atomic database replacement: cdbmake can rewrite an entire
  database two orders of magnitude faster than other hashing packages.
* Fast database dumps: cdbdump prints the contents of a database in
  cdbmake-compatible format.

cdb is designed to be used in mission-critical applications like e-mail.
Database replacement is safe against system crashes. Readers don't have
to pause during a rewrite.

Note for developers:  packages that need to read cdb files should
incorporate the necessary portions of the cdb library rather than
relying on an external cdb library. (See WWW)

WWW: http://cr.yp.to/cdb.html