Skip to content

A Key-Value data storage system. - [ This is a practice program ]

License

Notifications You must be signed in to change notification settings

mrxiaozhuox/dorea

Repository files navigation

Build GitHub Code

Dorea is a key-value data storage system. It is based on the Bitcask storage model

Documentation | Crates.io | API Doucment

简体中文 | English

Data Sturct

Dorea have the basic data type and some compound type.

  • String
  • Number
  • Boolean
  • Binary
  • List <DataValue>
  • Dict <String, DataValue>
  • Tuple <DataValue, DataValue>

Storage Model

dorea based on the Bitcask storage model. (Log)

All insert, update, delete operations are implemented as appends.

key: foo | value: "bar" | timestamp: 1626470590043 # Insert Value
key: foo | value: "new" | timestamp: 1626470590043 # Update Value (append info)
key: foo | value:  none | timestamp: 1626470590043 # Remove Value (append info)

When a storage file reaches a maximum capacity, it is archived and a new write file is created.

Screenshot

Docker

docker pull mrxiaozhuox/dorea

About

A Key-Value data storage system. - [ This is a practice program ]

Topics

Resources

License

Stars

Watchers

Forks

Languages