An in-memory key-value database project for educational purposes.
- Follows RESP2/RESP3 specification from redis, so all redis clients are compatible
- Includes B-Tree for caching
- Fully configurable via .tellyconf
- Includes command queue system using a thread
- Supports integer, string, null, boolean, list and hash table types
- Provides atomicity when saving to the database file
- Provides saving to the database file using a background thread
- Provides authorization system with permissions using passwords
- Uses Direct I/O for logging and database files
Look at:
docs/SPECS.md for more technical information,
docs/FILE.md for information about provided files by tellydb,
docs/COMMANDS.md for information about commands,
docs/AUTH.md for information about authorization
- Install a client that allows to connect tellydb or redis server
- Compile using
make
- Look at default configuration file using
telly default-config
- If you want to change configuration values, create a configuration file using
telly create-config
- Start the server using
telly
- Start using some commands
To get information about cli commands, use telly help
.
Licensed under BSD-3 Clause Clear License.