What are the advantages of using Rust to develop KV databases?

This page summarizes the projects mentioned and recommended in the original post on reddit.com/r/rust

Our great sponsors
  • InfluxDB - Access the most powerful time series database as a service
  • Sonar - Write Clean C++ Code. Always.
  • ONLYOFFICE ONLYOFFICE Docs — document collaboration in your environment
  • RocksDB

    A library that provides an embeddable, persistent key-value store for fast storage.

    It's fairly challenging to write a KV database, and takes several years of development to get the balance right between performance and reliability and avoiding data loss. Maybe read through the documentation for RocksDB https://github.com/facebook/rocksdb/wiki/RocksDB-Overview and watch the video on why it was developed and that may give you an impression of what is involved.

  • sqlx

    🧰 The Rust SQL Toolkit. An async, pure Rust SQL crate featuring compile-time checked queries without a DSL. Supports PostgreSQL, MySQL, SQLite, and MSSQL. (by launchbadge)

    Perhaps Rust has some nice crates that will assist your development, but you're going to have to evaluate whether their design decisions meet the needs of your design, especially if you want to handle powerloss without data loss whilst maintaining high performance. Here's an example of where a create chose design over performance https://github.com/launchbadge/sqlx/issues/2007

  • InfluxDB

    Access the most powerful time series database as a service. Ingest, store, & analyze all types of time series data in a fully-managed, purpose-built database. Keep data forever with low-cost storage and superior data compression.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts