This crate started out as just a way for me to learn how boltdb works, while learning Rust at the same time. But somehow people started finding and using it and seem to like the simple API, so I figured I might as well share it in case someone else finds it useful too. If you want to know more about my motivations and the history of this crate, you can read the release notes on version 0.8.0! Source: about 1 year ago
Some example of embeddable database could be genji, badger and boltdb. Source: about 1 year ago
Designing Data Intensive applications- specifically chapter 3 and 4 which deal with strategies and algorithms for storing and encoding data to be stored on disk and their pros and cons. Once you read that, I'll suggest reading the source of a simple embedded key-value database, I wouldn't bother with RDBMs as they are complex beasts and contain way more than you need. BoltDB is a good project to read the source of... - Source: Hacker News / over 1 year ago
Bolt db and Bolt db's author post to go with it. Source: over 1 year ago
The litestream project was created by https://github.com/benbjohnson who wrote https://github.com/boltdb/bolt (a key value store) which has been instrumental (from my point of view) in the Go community as one of the first choices for an embedded database as it had the idea of transactions and views. It was used by https://github.com/blevesearch/bleve, https://github.com/etcd-io/etcd, and number of other projects. - Source: Hacker News / about 2 years ago
For a single server, SQLite, or boltdb[0] I've never had to scale horizontally. I develop in Go and you can get very far along with just vertical scaling (aka beefier hardware). Therefore I can't give concrete examples of a distributed db-as-a-library. But all that you need is to extend the functions that fetch data to not just fetch from disk but from "peers" as well. For this to work you need servers (instances)... - Source: Hacker News / about 2 years ago
All of https://github.com/boltdb/bolt is pretty readable (albeit low-level) code and will show you how an on-disk copy-on-write memory-mapped b-tree works. Introductory talk at https://eagain.net/talks/go-nuts-and-bolts/. Source: over 2 years ago
There's things like boltdb which maps a database file to memory and accesses it through raw structures with no serialization. Any changes to the structure layout would break it. Source: over 2 years ago
I think you should do some testing. Iteration and range query is right in the readme of boltdb, https://github.com/boltdb/bolt. Source: over 2 years ago
After few weeks of active practice try to build some app with an embedded database like BadgerDB or Bolt, cover it with tests. Start looking into open source projects that you are interested in, try to participate in them. Source: over 2 years ago
A few months ago, I saw that Ben Johnson, author of the popular Bolt database, had taken on a new project: Litestream. It's a simple, open-source tool that replicates a SQLite database to Amazon's S3 cloud storage. - Source: dev.to / almost 3 years ago
Check out this: https://github.com/boltdb/bolt Always been considered a good example to study. - Source: Hacker News / about 3 years ago
We initially went for using bolt (and later bbolt) which is the same store that powers etcd. It uses a B+tree approach. It worked great, but we're not happy with the write performance. We're currently in the process of switching to a custom LSM-tree-based approach, which is what you typically find in DBs with great write performance (e.g. Cassandra). Source: about 3 years ago
Do you know an article comparing BoltDB to other products?
Suggest a link to a post with product alternatives.
This is an informative page about BoltDB. You can review and discuss the product here. The primary details have not been verified within the last quarter, and they might be outdated. If you think we are missing something, please use the means on this page to comment or suggest changes. All reviews and comments are highly encouranged and appreciated as they help everyone in the community to make an informed choice. Please always be kind and objective when evaluating a product and sharing your opinion.