From Fedora Project Wiki
No edit summary
No edit summary
Line 33: Line 33:


* '''[http://rocksdb.org/ RocksDB]''' (Built on LevelDB)
* '''[http://rocksdb.org/ RocksDB]''' (Built on LevelDB)
** '''Written in:'''
** '''Written in:''' C++
** '''Wrappers for:'''
** '''Wrappers for:''' Java (In development)
** '''Packages available for:''' Not available in Fedora?
** '''Packages available for:''' Not available in Fedora?
** '''Latest release:''' 4.9.0 / 2016-06-09
** '''Latest release:''' 4.9.0 / 2016-06-09

Revision as of 11:27, 27 July 2016

  • LMDB
    • Written in: C
    • Wrappers for: C++, Java, Python, Perl, Ruby, Go, Erlang, PHP, Lua
    • Packages available for: Fedora 23+, EPEL6+
    • Latest release: 0.9.18 / 2016-02-05
    • License: OpenLDAP Public License
    • Search key length: Maximum length of 1/3 of a page (~1365B)
    • Read-only access to DB: The library is fully thread-aware and supports concurrent read/write access from multiple processes and threads. [docs]
    • Supported architectures: i386/x86-64/PowerPC/ARM
    • Query keys larger than X: Using cursors: MDB_SET_RANGE - Position at first key greater than or equal to specified key.
  • Kyoto Cabinet (replacing Tokyo Cabinet)
    • Written in: C++
    • Wrappers for: C, Java, Python, Ruby, Perl, and Lua
    • Packages available for: Fedora 23+, EPEL5+
    • Latest release: 1.2.76 / 2012-05-24
    • License: GNU GPL
    • Search key length: No limit from database itself (uses c++ std::string or combination of c-style string and its length).
    • Read-only access to DB: See http://fallabs.com/kyotocabinet/spex.html, part Sharing One database by Multiple Processes. TL;DR: One DB cannot be accessed by multiple processes, DB file is protected by reader-writer lock (which means it will probably require write access even for read-only operation).
    • Supported architectures: Linux 2.6 and later (i386/x86-64/PowerPC/Alpha/SPARC)
    • Query keys larger than X: DB supports matching by regex, which should be possible to use for this kind of query. Other possibilities are match by prefix and match by similarity.
  • LevelDB
    • Written in: C++
    • Wrappers for: Java, Go, Erlang, node.js
    • Packages available for: Fedora 23+, EPEL6+
    • Latest release: 1.18 / 2014-09-16
    • License: 3-Clause BSD
    • Search key length:
    • Read-only access to DB:
    • Supported architectures: i386/x86-64/PowerPC/ARM
    • Query keys larger than X:
  • RocksDB (Built on LevelDB)
    • Written in: C++
    • Wrappers for: Java (In development)
    • Packages available for: Not available in Fedora?
    • Latest release: 4.9.0 / 2016-06-09
    • License: 3-Clause BSD
    • Search key length:
    • Read-only access to DB:
    • Supported architectures: x86-64/PowerPC/ARM
    • Query keys larger than X:
  • UnQlite
    • Written in: C
    • Wrappers for:
    • Packages available for: Not yet available in Fedora
    • Latest release: 1.1.6 / 2015-08-26
    • License: 2-Clause BSD
    • Search key length:
    • Read-only access to DB:
    • Supported architectures:
    • Query keys larger than X:

Older (probably unmantained) projects

  • TokyoCabinet (replacing QDBM)
    • Written in: C
    • Wrappers for: Perl, Ruby, Java, and Lua
    • Packages available for: Fedora 23+, EPEL5+, RHEL6+
    • Latest release: 1.4.48 / 2012-08-18
    • License: GNU LGPL
    • Search key length:
    • Read-only access to DB:
    • Supported architectures: Linux 2.4 and later (x86-32/x86-64/PowerPC/Alpha/SPARC)
    • Query keys larger than X:
  • QDBM
    • Written in: C
    • Wrappers for: C++, Java, Perl, and Ruby
    • Packages available for: Fedora 23+
    • Latest release: 1.8.78 / 2007-03-07
    • License: GNU LGPL
    • Search key length:
    • Read-only access to DB:
    • Supported architectures: Linux (2.2, 2.4, 2.6) (IA32, IA64, AMD64, PA-RISC, Alpha, PowerPC, M68000, ARM)
    • Query keys larger than X:
  • NDBM
    • Written in:
    • Wrappers for:
    • Packages available for:
    • Latest release:
    • License:
    • Search key length:
    • Read-only access to DB:
    • Supported architectures:
    • Query keys larger than X:
  • GDBM
    • Written in:
    • Wrappers for:
    • Packages available for:
    • Latest release:
    • License:
    • Search key length:
    • Read-only access to DB:
    • Supported architectures:
    • Query keys larger than X: