3 ms·
They use go for their database and didn't want to use cgo due to performance and debugging concerns, so they wrote their own storage engine in go. There is some
by gregwebs 8y ago
They use go for their database and didn't want to use cgo due to performance and debugging concerns, so they wrote their own storage engine in go. There is some experimental work going on at PingCAP (makers of TiDB) to bring this concept to RocksDB.
- mrjn 8y agoI've been thinking of writing a paper about Badger in general and in particular, our experiments with perfecting the value log GC while keeping the 3-dimensional access provided by Badger (RocksDB doesn't provide direct iteration over versions).
- gregwebs 8y agoMore information on practical implementation would definitely be helpful. Maybe give a talk if that is a lower bar? The RocksDB conference just happened [1], but there might be a different appropriate meetup. TiDB has versions in its RocksDB keys [2] [1] https://www.meetup.com/RocksDB/photos/29331158/475279758/ https://www.meetup.com/RocksDB/photos/29331158/475279758/ [2] https://pingcap.com/blog/2016-11-15-Travelling-Back-in-Time-and-Reclaiming-the-Lost-Treasures/ https://pingcap.com/blog/2016-11-15-Travelling-Back-in-Time-...
- mrjn 8y agoAh.. didn't know about the effort at TiDB to put this in RocksDB. They surely can learn from our efforts.