moss
LevelDB
moss | LevelDB | |
---|---|---|
2 | 27 | |
941 | 35,186 | |
0.0% | 0.9% | |
0.0 | 0.0 | |
about 2 years ago | 15 days ago | |
Go | C++ | |
GNU General Public License v3.0 or later | BSD 3-clause "New" or "Revised" License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
moss
-
Open Source Databases in Go
moss - Moss is a simple LSM key-value storage engine written in 100% Go.
-
But how, exactly, databases use mmap?
I decided to dig through a database source code to answer that question. There are plenty of databases that use mmap. Some of them decided to not use anymore. Some examples: SQLite has an option of accessing disk content directly using memory-mapped I/O[1], it seems LevelDB used to use but it changed it[2], Lucene has an option with MMapDirectory[3], LMDB uses mmap[4], a simple key/value in-memory database from Counchbase called moss uses mmap for durability of in-memory data[5] and MongoDB removed mmap storage engine for WiredTiger[6].
LevelDB
-
Codebases to read
I'm partial to how cleanly written https://github.com/google/leveldb is. It is a reasonable size to fully read & grok in not too long.
-
Unpacking LSM-Trees: The Powerhouse Behind Modern Databases
[4] leveldb/doc/impl.md at main · google/leveldb. GitHub. Retrieved October 21, 2023 from https://github.com/google/leveldb/blob/main/doc/impl.md
- Bloom filter support to leveldb by Sanjay Ghemawat
- SQLite performance tuning: concurrent reads, multiple GBs and 100k SELECTs/s
-
The Witty Guide to Installing LevelDB on Ubuntu: HostRooster® Edition
git clone https://github.com/google/leveldb.git
-
Is there a lightweight, stable and embedded database library?
leveldb?
- Ask HN: What's the best source code you've read?
-
LevelDB VS ZoneTree - a user suggested alternative
2 projects | 22 Aug 2022
- Is Mongo as popular in the job world as it is with tutorial makers?
-
Open Source Databases in Go
goleveldb - Implementation of the LevelDB key/value database in Go.
What are some alternatives?
badger - Fast key-value DB in Go.
RocksDB - A library that provides an embeddable, persistent key-value store for fast storage.
bolt
MongoDB - The MongoDB Database
tidb - TiDB is an open-source, cloud-native, distributed, MySQL-Compatible database for elastic scale and real-time analytics. Try AI-powered Chat2Query free at : https://tidbcloud.com/free-trial
Redis - Redis is an in-memory database that persists on disk. The data model is key-value, but many different kind of values are supported: Strings, Lists, Sets, Sorted Sets, Hashes, Streams, HyperLogLogs, Bitmaps.
prometheus - The Prometheus monitoring system and time series database.
SQLite - Unofficial git mirror of SQLite sources (see link for build instructions)
InfluxDB - Scalable datastore for metrics, events, and real-time analytics
LMDB - Read-only mirror of official repo on openldap.org. Issues and pull requests here are ignored. Use OpenLDAP ITS for issues.
fastcache - Fast thread-safe inmemory cache for big number of entries in Go. Minimizes GC overhead
CouchDB - Seamless multi-master syncing database with an intuitive HTTP/JSON API, designed for reliability