{"repo":"BoakDB/B-Oak-DB","free":true,"listed":false,"github":"https://github.com/BoakDB/B-Oak-DB","clone":"git clone https://github.com/BoakDB/B-Oak-DB.git","description":"A high performance NOSQL DBMS build upon B+trees, and index clustered storage","language":"Java","stars":14,"topics":["btree","database","dbms","index","java","nosql"],"license":"MIT","category":"databases-storage","readme_excerpt":"Disk Manager - B+ Tree Storage Engine A high-performance, concurrent disk-based storage engine written in Java, implementing a B+ tree indexing structure with sophisticated buffer pool management and asynchronous disk I/O operations. Project Overview This project is a complete database storage engine that provides: - B+ Tree Indexing : Efficient data storage and retrieval with logarithmic time complexity - Buffer Pool Management : Intelligent memory management with LRU eviction policies - Concurrent Access Control : Thread-safe operations with fine-grained locking - Asynchronous Disk I/O : Non-blocking disk operations for improved performance - Type System : Support for multiple data types with efficient serialization Architecture Overview The system follows a layered architecture with clear separation of concerns: Core Components 1. Disk Manager ( src/diskmanager/ ) Purpose : Handles all disk I/O operations with asynchronous request processing. Key Features : - Asynchronous I/O : Uses a blocking queue and thread pool for non-blocking disk operations - File Management : Automatic file creation and management in the storage/ directory - Page Allocation : Pre-allocates pages in chunks (1024 pages = 8MB) for better performance - Concurrent Access : Thread-safe operations with per-file resize locks Key Classes : - BasicDiskManager : Main implementation with request queue processing - DiskRequest : Encapsulates read/write requests with completion futures - RandomAccessDiskFile : F","default_branch":null,"files":null,"tree":[],"storefront":"/r/BoakDB","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/BoakDB/B-Oak-DB/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}