#db #embedded-database #mdb

dmds

Multidimensional database implemented in Rust

7 unstable releases (3 breaking)

0.4.0 Apr 18, 2024
0.3.0 Apr 18, 2024
0.2.2 Jan 2, 2024
0.2.1 Dec 29, 2023
0.1.1 Dec 6, 2023

#1339 in Database interfaces

Download history 9/week @ 2024-01-11 3/week @ 2024-02-15 24/week @ 2024-02-22 7/week @ 2024-02-29 3/week @ 2024-03-07 4/week @ 2024-03-14 4/week @ 2024-03-21 23/week @ 2024-03-28 14/week @ 2024-04-04 6/week @ 2024-04-11 218/week @ 2024-04-18 11/week @ 2024-04-25

250 downloads per month
Used in dmds-tokio-fs

LGPL-3.0-or-later

80KB
2K SLoC

dmds

dmds is an asynchronous and multi-dimensional embedded database system.

Features

Multi-dimensional

dmds is a multi-dimensional database. It can store data in multiple dimensions. For example, you can store data in the following dimensions:

  • user_id
  • username_hash
  • username_length

In this case, there are 3 dimensions available. This shape the database into a 3D world. See the API document for more information.

With different dimensions, it will be faster to query data with dimensional restrictions.

Asynchronous

All actions in dmds related with blocking interactions are asynchronous. This means that you can use dmds in a non-blocking way.

Customize I/O handling

dmds allows you to write your own I/O handling system. This means that you can save data directly in your disk, or save it on another devices through the network.


lib.rs:

Multi-dimensional database implemented in Rust.

Dependencies

~2–8MB
~54K SLoC