https://github.com/tidesdb/tidesdb-go
Official GO binding for TidesDB
https://github.com/tidesdb/tidesdb-go
btree clib database keyvalue lsmtree oltp storage-engine ttl
Last synced: 2 days ago
JSON representation
Official GO binding for TidesDB
- Host: GitHub
- URL: https://github.com/tidesdb/tidesdb-go
- Owner: tidesdb
- License: mpl-2.0
- Created: 2024-12-01T06:02:46.000Z (over 1 year ago)
- Default Branch: master
- Last Pushed: 2026-03-21T15:16:02.000Z (about 1 month ago)
- Last Synced: 2026-03-22T05:48:41.023Z (about 1 month ago)
- Topics: btree, clib, database, keyvalue, lsmtree, oltp, storage-engine, ttl
- Language: Go
- Homepage: https://tidesdb.com/reference/go/
- Size: 115 KB
- Stars: 6
- Watchers: 1
- Forks: 3
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# tidesdb-go
tidesdb-go is the official GO 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 GO binding provides a safe, idiomatic GO interface to TidesDB with full support for all features.
## Features
- Full ACID transaction support with savepoints
- MVCC with five isolation levels from READ UNCOMMITTED to SERIALIZABLE
- Column families aka isolated key-value stores with independent configuration
- Bidirectional iterators with forward/backward traversal with seek support
- TTL(time to live) support with automatic key expiration and internal garbage collection
- LZ4, LZ4 Fast, ZSTD, Snappy, or no compression
- Bloom filters with configurable false positive rates
- Global block CLOCK cache for hot blocks
- Automatic with configurable thread pools (sorted runs, compaction)
- Six built-in comparators plus custom registration
For GO usage you can go to the TidesDB GO Reference [here](https://tidesdb.com/reference/go/).
## License
Multiple licenses apply:
```
Mozilla Public License Version 2.0 (TidesDB)
BSD 3 Clause (Snappy)
BSD 2 (LZ4)
BSD 2 (xxHash - Yann Collet)
BSD (Zstandard)
```
## Contributing
Contributions are welcome! Please feel free to submit a Pull Request.