32 releases

0.1.32 Oct 17, 2024
0.1.31 May 26, 2024
0.1.29 Mar 5, 2024
0.1.22 Nov 26, 2023
0.1.6 Jul 2, 2022

#1210 in Database interfaces

Download history 5/week @ 2024-07-08 4/week @ 2024-07-29 2/week @ 2024-08-26 14/week @ 2024-09-16 30/week @ 2024-09-23 8/week @ 2024-09-30 16/week @ 2024-10-07 174/week @ 2024-10-14 16/week @ 2024-10-21

216 downloads per month
Used in rapiddb-web

AGPL-3.0

59KB
983 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–9MB
~83K SLoC