1The DBM class provides a wrapper to a Unix-style Database Manager 2library. 3 4Dbm databases do not have tables or columns; they are simple key-value 5data stores, like a Ruby Hash except not resident in RAM. Keys and 6values must be strings. 7 8The exact library used depends on how Ruby was compiled. It could be 9any of the following: 10 11* The original ndbm library is released in 4.3BSD. It is based on dbm 12 library in Unix Version 7 but has different API to support multiple 13 databases in a process. 14* Berkeley DB versions 1 thru 6, also known as BDB and Sleepycat DB, 15 now owned by Oracle Corporation. 16* Berkeley DB 1.x, still found in 4.4BSD derivatives (FreeBSD, 17 OpenBSD, etc). 18* GDBM, the GNU implementation of dbm. 19* QDBM, another open source reimplementation of dbm. 20 21All of these dbm implementations have their own Ruby interfaces 22available, which provide richer (but varying) APIs. 23