https://github.com/tidesdb/tidesdb-cpp
Official C++ binding for TidesDB
https://github.com/tidesdb/tidesdb-cpp
btree database lsm-tree oltp storage-engine
Last synced: about 2 months ago
JSON representation
Official C++ binding for TidesDB
- Host: GitHub
- URL: https://github.com/tidesdb/tidesdb-cpp
- Owner: tidesdb
- License: mpl-2.0
- Created: 2024-12-01T06:02:13.000Z (over 1 year ago)
- Default Branch: master
- Last Pushed: 2026-03-11T17:09:47.000Z (4 months ago)
- Last Synced: 2026-03-11T22:31:34.462Z (4 months ago)
- Topics: btree, database, lsm-tree, oltp, storage-engine
- Language: C++
- Homepage: https://tidesdb.com
- Size: 2.09 MB
- Stars: 2
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# tidesdb-cpp
tidesdb-cpp is the official C++ binding for TidesDB.
TidesDB is a fast and efficient key-value storage engine library written in C. The underlying data structure is based on a log-structured merge-tree (LSM-tree). This C++ binding provides a modern C++17 interface to TidesDB.
## Features
- MVCC with five isolation levels from READ UNCOMMITTED to SERIALIZABLE
- Column families (isolated key-value stores with independent configuration)
- Bidirectional iterators with forward/backward traversal and seek support
- TTL (time to live) support with automatic key expiration
- LZ4, LZ4 Fast, ZSTD, Snappy, or no compression
- Bloom filters with configurable false positive rates
- Global block CLOCK cache for hot blocks
- Savepoints for partial transaction rollback
- Six built-in comparators plus custom registration
For C++ usage you can go to the TidesDB C++ Reference [here](https://tidesdb.com/reference/cplusplus/).
## License
Multiple licenses apply:
- Mozilla Public License Version 2.0 (TidesDB)
- BSD 3-Clause (Snappy)
- BSD 2-Clause (LZ4)
- BSD 2-Clause (xxHash - Yann Collet)
- BSD (Zstandard)
## Contributing
Contributions are welcome! Please feel free to submit a Pull Request.