summaryrefslogtreecommitdiff
path: root/databases/ruby-dbm/DESCR
blob: de321dcce2ceeac080cb1196a3c8b0561866d7bb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
DBM

The DBM class provides a wrapper to a Unix-style dbm or Database Manager
library.

Dbm databases do not have tables or columns; they are simple key-value data
stores, like a Ruby Hash except not resident in RAM.  Keys and values must
be strings.

The exact library used depends on how Ruby was compiled.  It could be any of
the following:

* The original ndbm library is released in 4.3BSD.  It is based on dbm
  library in Unix Version 7 but has different API to support multiple
  databases in a process.
* Berkeley DB versions 1 thru 5, also known as BDB and Sleepycat DB, now
  owned by Oracle Corporation.
* Berkeley DB 1.x, still found in 4.4BSD derivatives (FreeBSD, OpenBSD,
  etc).
* gdbm, the GNU implementation of dbm.
* qdbm, another open source reimplementation of dbm.

All of these dbm implementations have their own Ruby interfaces available,
which provide richer (but varying) APIs.