awesome-elixir icon indicating copy to clipboard operation
awesome-elixir copied to clipboard

Add Package "cubdb" (embedded key/value database)

Open lucaong opened this issue 6 years ago • 1 comments

Title

Add Package "cubdb"

Description

Add the Package "cubdb" from hex.pm

Link: https://hex.pm/packages/cubdb

Description:

CubDB is an embedded key-value database, written in the Elixir language. It runs locally, it is schema-less, and backed by a single file.

Both keys and values can be any arbitrary Elixir (or Erlang) term.

The most relevant features offered by CubDB are:

  • Simple get/3, put/3, and delete/2 operations

  • Arbitrary selection of entries and transformation of the result with select/3

  • Atomic multiple updates with get_and_update_multi/4

  • Concurrent read operations, that do not block nor are blocked by writes

The CubDB database file uses an immutable data structure that guaratees robustness to data corruption, as entries are never changed in-place. It also makes read operations consistent, even while write operations are being performed concurrently, as ranges of entries are selected on immutable snapshots.

lucaong avatar Jul 05 '19 14:07 lucaong

Agree, great project!

matreyes avatar Jul 08 '22 00:07 matreyes