zhaoalpha / yesdb

A storage engine for study

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

yesdb

  • A storage engine for study

Features

  • Builtin server (yesdb-server)
  • Predictable read/write performance
  • Low latency
  • High throughput

Dependency

Install Dependency

ART no need install

# Catch2
git clone https://github.com/catchorg/Catch2.git
cd Catch2 && cmake -B build && cmake --build build && cd build && sudo make install
# Other dependency similar

How to Run

cd yesdb
cmake -B build
cmake --build build
./src/yesdb_server
curl http://0.0.0.0:18080/yesdb

Physical Data Layout

/*
* +-------+--------+--------+----------+-----+-------+
* | crc32 | tstamp | key_sz | value_sz | key | value | 
* +-------+--------+--------+----------+-----+-------+
*/

TODO 2023.8

  • Wal
  • Index
  • Recovery

Done

  • Read
  • Write
  • Serialize
  • Deserialize
  • Compress
  • Decompress
  • DBServer
  • Log
  • ART
  • Benchmark

About

A storage engine for study

License:Apache License 2.0


Languages

Language:C++ 79.1%Language:CMake 20.9%