MiniOB is an open-source educational relational database kernel designed for learning the internals of database systems. It implements a dual-engine storage architecture combining B+ Tree and LSM-Tree, supports SQL parsing and query execution, and provides transactional processing with multi-version concurrency control. The system communicates with clients using the MySQL wire protocol and includes a vector database extension for storing and querying high-dimensional vectors.
الميزات الرئيسية لـ oceanbase/miniob هي: Relational Data Storage, Educational Database Systems, Concurrent Read-Write Transactions, Atomic Transaction Coordinators, Data Persistence and Storage, Record-Level Indexes, Transactional Row Storages, Commit Order Dependencies.
تشمل البدائل مفتوحة المصدر لـ oceanbase/miniob: cmu-db/bustub — This is an educational relational database engine used in Carnegie Mellon University's database systems course.… h2database/h2database — H2 is a JDBC-compliant relational database management system written in Java. It functions as an embeddable SQL… skyzh/mini-lsm — Mini-LSM is an educational storage engine and key-value database library designed to demonstrate the implementation of… cberner/redb — redb is an embedded key-value store and ACID-compliant storage engine. It functions as a persistent storage system for… cockroachdb/pebble — Pebble is an embedded key-value storage engine written in Go, designed as a library that provides durable,… spacejam/sled — Sled is an embedded key-value store and ACID-compliant database designed for high-performance data persistence. It…
This is an educational relational database engine used in Carnegie Mellon University's database systems course. Students learn internals by implementing core components of a working database, including storage, indexing, concurrency control, and crash recovery. The system covers key database architecture: a B+ tree index for fast key-based lookups and range scans, a disk-oriented buffer pool that caches pages from disk, an iterator-based query execution model that composes physical operators, page-based storage for records, two-phase locking for coordinating concurrent transactions, and write
H2 is a JDBC-compliant relational database management system written in Java. It functions as an embeddable SQL database that can run directly within an application process to remove network latency, or as an in-memory database for high-performance volatile storage. It also includes a web-based console for executing SQL commands and administering schemas. The system is characterized by its flexible deployment modes, including a standalone server mode for remote TCP/IP access and a mixed mode for simultaneous local and remote connectivity. It features a dialect emulation layer and compatibilit
Mini-LSM is an educational storage engine and key-value database library designed to demonstrate the implementation of log-structured merge-tree architecture. It serves as a pedagogical resource for understanding how to build high-performance storage systems from the ground up, focusing on the mechanics of persistent data structures and disk-based storage. The project provides a functional framework for managing data through memory-to-disk flushing and multi-version concurrency control. It distinguishes itself by implementing snapshot-based isolation, which allows for consistent views of the
redb is an embedded key-value store and ACID-compliant storage engine. It functions as a persistent storage system for saving and retrieving data as key-value pairs within a tree structure. The engine is built as an MVCC transactional database, utilizing multi-version concurrency control to manage simultaneous reads and writes without blocking. It employs a single-writer multi-reader model to ensure data consistency while allowing multiple threads to access the store. The system provides persistent state management and atomic transaction management to prevent data corruption during crashes.