29 releases

0.1.29 Mar 5, 2024
0.1.28 Feb 23, 2024
0.1.23 Jan 23, 2024
0.1.22 Nov 26, 2023
0.1.5 Jun 30, 2022

#859 in Database interfaces

Download history 7/week @ 2024-01-21 321/week @ 2024-02-18 456/week @ 2024-02-25 139/week @ 2024-03-03 21/week @ 2024-03-10 90/week @ 2024-03-17 22/week @ 2024-03-31 1/week @ 2024-04-07

114 downloads per month
Used in 2 crates (via rapiddb-web)

AGPL-3.0

58KB
944 lines



RapidDB

A reasonably fast configurable embedded key-value sensor database

Features

  • Lightweight embedded database
  • Simple key-value database interface
  • Simple and flexible optional embedded REST API
  • Memory first with on-disk persistence
  • Memory Mapped Append-only Vector backing storage
  • Bring your own database or API implementation
  • Store sensor data inside a sensor database

Getting started

Cargo.toml

[dependencies]
rapiddb = "0.1"

src/main.rs

use rapiddb::traits::IDatabase;

pub fn main() {
  let mut db = rapiddb::db::MMAVDatabase::new();

  let value = b"{\"key\": \"value\"}";
  db.post("test-0", value);
  assert_eq!(db.get_latest("test-0"), value);
}

Run the database with cargo

cargo run --release

Optional REST API

Visit further install options.

Documentation

Visit the Documentation.

Examples

Visit the Examples.

Dependencies

~2.8–4.5MB
~83K SLoC