Jul 20, 2023

Wrapper for the UNIX-style Database Manager Library

The DBM class provides a wrapper to a Unix-style 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 6, 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.

Checkout these related ports:
  • Zodb3 - Z - Object Database for python
  • Zodb - Python object-oriented database
  • Zabbix22-libzbxpgsql - Zabbix agent module for comprehensive monitoring of PostgreSQL servers
  • Xtrabackup8 - Open-source backup tool for InnoDB and XtraDB
  • Xtrabackup - OpenSource version of InnoDB backup with support of Percona extensions
  • Xrootd - Framework for fast, low latency, scalable data access
  • Xls2txt - Utilities to convert spreadsheet files to text and csv formats
  • Xapian-core12 - Probabilistic text search database engine
  • Xapian-core10 - Probabilistic text search database engine
  • Xapian-core - Probabilistic text search database engine
  • Xapian-bindings12 - Bindings allowing Xapian to be used from various programming languages
  • Xapian-bindings - Bindings allowing Xapian to be used from various programming languages
  • Wfb2sql - CIA World Fact Book to SQL Conversion Utility
  • Webdis - HTTP interface for Redis
  • Vsqlite - Well designed and portable SQLite3 Wrapper for C++