Skip to content

kruserr/rapiddb

Repository files navigation



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

Docker

Run database with docker

docker run -dit --rm -p 3030:3030 --name rapiddb kruserr/rapiddb:0.1

Further install options

Use the database with curl

Write to database with curl

curl -X POST localhost:3030/api/v0/test-0 -d '{"temp":4.00}'

Read from database with curl

curl localhost:3030/api/v0/test-0/latest

Explore the API with curl

curl localhost:3030/api/v0
curl localhost:3030/api/v0/sensors
curl localhost:3030/api/v0/test-0

Explore and customize the database

The database is highly customizable, if you use the database inside your cargo project. You can interact with the db object, and explore the IDatabase interface. You can also use warp::Filter to extend the API. You can also implement the IDatabase interface yourself, for your own database. Explore the docs to learn more, or look at the examples.

Documentation

Visit the Documentation.

Examples

Visit the Examples.