12 repository-uri
Collections and containers that are mapped directly to persistent storage to survive process restarts.
Distinct from Persistent Data Structures: Existing candidates focus on functional immutability or cache eviction; this is about general data structure persistence on disk.
Explore 12 awesome GitHub repositories matching data & databases · Disk-Persistent Data Structures. Refine with filters or upvote what's useful.
This project is an educational implementation of a relational database engine written in C. It functions as a SQLite clone, demonstrating the internal mechanics of a database system through a C-based systems project that focuses on manual memory management and file I/O. The engine is distinguished by its use of a bytecode virtual machine, which executes database operations by compiling SQL statements into low-level instructions. It utilizes a B-tree database engine to organize records in a balanced tree structure, ensuring efficient insertion, search, and range scanning. The system covers co
Implements disk-persistent data structures that map the B-Tree directly to a binary file for durability.
Hazelcast is a distributed data platform that combines an in-memory data grid with a stream processing engine to support real-time analytics and event-driven applications. It functions as a partitioned, distributed key-value store that replicates data across cluster nodes to provide low-latency access and high availability. The platform also serves as a distributed SQL query engine, allowing users to execute standard SQL statements against both in-memory datasets and external data sources. What distinguishes Hazelcast is its use of a distributed consensus subsystem to maintain strongly consis
Enables disk-based storage for distributed consensus groups to allow members to recover their data and rejoin groups after a restart.
goleveldb este o bază de date embedded de tip cheie-valoare pentru Go. Oferă persistența și indexarea locală a datelor, permițând aplicațiilor să stocheze și să preia informații folosind chei unice fără a necesita un server separat. Baza de date organizează datele folosind un log-structured merge-tree și indexare persistentă în ordine lexicografică. Această structură suportă scanări eficiente de interval și căutări bazate pe prefix. Sistemul include capabilități pentru scrieri atomice în lot pentru a asigura consistența datelor și a evita actualizările parțiale. Performanța este gestionată prin write-ahead logging, buffering bazat pe memorie și filtre bloom pentru a reduce input-ul și output-ul inutil pe disc.
Implements a persistent index in lexicographical order to support efficient range scans and prefix-based searches on disk.
Tilix is a tiling terminal emulator for Linux that uses GTK+ 3 widgets for native desktop integration and theming. It arranges multiple terminal sessions in a resizable grid layout, allowing users to split the window into several panes simultaneously. The application is built on the VTE terminal emulation engine and uses the Meson build system for compilation. The terminal supports synchronized input broadcasting, where keystrokes typed in one pane are replicated to all grouped terminals via D-Bus inter-process communication. It also offers a Quake-style drop-down mode that slides a terminal
Persists terminal pane layouts and configurations to disk as structured files for later restoration.
SpringSide 4 is an enterprise Java reference architecture and utility library built on the Spring Framework. It provides a pragmatic, best-practice application stack for building RESTful web services, web applications, and data access layers, along with a curated collection of high-performance utility classes for common operations like text, date, collection, reflection, concurrency, and I/O handling. The project distinguishes itself by combining a complete reference application scaffold with production-oriented infrastructure. It includes a JPA-based data access layer that automatically tran
Supports persisting the embedded H2 database to disk for development and testing.
Remark42 este un motor de comentarii self-hosted, axat pe confidențialitate, conceput pentru site-uri web și bloguri. Funcționează ca o aplicație independentă care poate fi implementată ca un binar unic sau ca o imagine containerizată pe diferite sisteme de operare. Sistemul permite unei singure instanțe să găzduiască servicii de comentarii pentru mai multe domenii distincte prin gestionarea multi-site. Utilizează un strat de identitate care verifică utilizatorii prin e-mail, conturi anonime sau furnizori sociali folosind autentificarea OAuth. Platforma suportă conversații structurate (threaded) cu formatare Markdown și oferă instrumente administrative pentru moderare, inclusiv blocarea utilizatorilor și fixarea (pinning) discuțiilor. Include utilitare de gestionare a datelor pentru importul comentariilor istorice de pe platforme externe și exportul stării sistemului prin fișiere locale sau JSON. Serverul este livrat ca un executabil independent sau imagine Docker.
Implements system state and comment data persistence using a local embedded database file to avoid external server dependencies.
Acest proiect este un motor de similaritate vectorială în C++ și o implementare a algoritmului Hierarchical Navigable Small World. Oferă o bibliotecă header-only pentru efectuarea căutărilor aproximative de cel mai apropiat vecin (ANN) în spații cu dimensiuni mari, alături de binding-uri Python care expun aceste capabilități de indexare și căutare mediilor de data science. Motorul permite recuperarea embedding-urilor în timp real și căutarea de similaritate în spații cu dimensiuni mari folosind o structură de graf multi-strat pentru a echilibra viteza și acuratețea căutării. Suportă metrici de distanță personalizate pentru a calcula similaritatea între vectori în diverse spații matematice. Sistemul acoperă o gamă largă de operațiuni de indexare, inclusiv inserarea incrementală a vectorilor și capacitatea de a marca elementele ca șterse fără a reconstrui indexul. Suportă, de asemenea, căutarea multi-vectorială, filtrarea rezultatelor căutării și persistența pe disc pentru a salva și reîncărca starea indexului.
Implements the ability to serialize the in-memory graph structure to disk for session recovery.
MapDB este un motor de bază de date embedded și o bibliotecă de colecții susținută de disc care stochează colecțiile Java pe disc sau off-heap. Funcționează ca un motor local de procesare a datelor conceput pentru a gestiona seturi de date care depășesc memoria RAM fizică disponibilă. Proiectul utilizează stocarea datelor off-heap pentru a elimina overhead-ul de garbage collection și folosește caching-ul cu overflow pe disc pentru a echilibra utilizarea memoriei și a discului. Oferă utilitare specializate pentru filtrarea și analizarea unor volume mari de date locale pe o singură mașină. Sistemul asigură integritatea datelor prin tranzacții conforme ACID și controlul concurenței multi-versiune. Suportă map-uri, seturi și cozi persistente folosind indexare B-tree și un jurnal de tranzacții secvențial pentru durabilitate. Comportamentul sistemului și operațiunile motorului intern pot fi monitorizate prin niveluri de logare configurabile și formate de output.
Maps collections like maps, sets, and queues directly to persistent storage to survive process restarts.
Tale is a self-hosted blogging platform and content management system built with Java. It functions as a Markdown publishing system that renders lightweight markup into structured web pages and stores posts and metadata within an embedded database for portability and easy backups. The system is distinguished by its highly customizable visual layer, supporting custom skin design, external theme installation, and the development of templates using structured directories of assets. It also features a plugin system that allows for the loading of external logic packages and custom components durin
Persists all application data and content in a self-contained embedded database file for portability.
tmuxp este un manager de sesiuni tmux și un orchestrator de workspace declarativ care automatizează crearea și organizarea sesiunilor, ferestrelor și panourilor. Acesta funcționează ca un wrapper de automatizare libtmux, permițând utilizatorilor să definească layout-uri complexe de terminal și comenzi shell inițiale folosind fișiere de configurare YAML sau JSON. Proiectul se distinge ca un instrument de snapshot pentru layout-ul terminalului, capabil să captureze starea unei sesiuni care rulează și să o salveze ca o configurație reproductibilă. De asemenea, suportă automatizarea fluxului de lucru în terminal prin executarea sarcinilor de bootstrap și a scripturilor de startup pentru a pregăti mediile înainte de lansarea sesiunilor interactive. Capabilitățile sale mai largi includ orchestrarea terminalului headless pentru pipeline-uri automate, gestionarea variabilelor de mediu pentru rezoluție dinamică și o arhitectură de plugin-uri pentru construcția personalizată a sesiunilor. Sistemul oferă, de asemenea, instrumente pentru suspendarea stării sesiunii, capturarea sesiunii live și inspectarea stării în timp real printr-o consolă interactivă.
Captures the current state of a running tmux session and saves it as a reusable configuration file.
tmuxp este un manager de sesiuni și un automatizator de workspace pentru tmux. Acesta permite crearea, salvarea și restaurarea layout-urilor sesiunilor de terminal folosind fișiere de configurare YAML sau JSON, servind ca un strat programatic construit pe libtmux. Proiectul se distinge prin faptul că acționează atât ca un generator de workspace, cât și ca un exportator de layout. Poate instanția medii live din definiții structurate și, invers, poate captura starea sesiunilor active pentru a le salva ca fișiere de configurare portabile. De asemenea, suportă extensibilitatea printr-un framework de plugin-uri și logică de builder personalizată pentru a modifica ciclurile de viață ale sesiunilor și generarea workspace-ului. Capabilitățile largi includ orchestrarea fluxului de lucru în terminal și automatizarea mediului de dezvoltare. Instrumentul gestionează injectarea variabilelor de mediu, moștenirea ierarhică a configurației și executarea hook-urilor de startup și a comenzilor shell pe mai multe panouri. De asemenea, oferă utilitare pentru provizionarea mediului headless și inspectarea sesiunilor live. Instrumentul este implementat în Python și interfațează cu interfața de linie de comandă tmux.
Saves an active terminal session arrangement to a file to be edited and replayed later.
This project is a disk-backed key-value store and persistent data structure library for Python. It provides a mechanism for persisting mappings, sets, and queues to the local filesystem to bypass memory limitations and cache expensive function results across threads and processes. The system serves as a cross-process synchronization tool, offering distributed locks, semaphores, and barriers to coordinate shared resource access. It implements advanced caching strategies such as probabilistic stampede prevention, sharded data partitioning to increase throughput, and least-recently-used eviction
Implements queues and sorted sets that persist to the local filesystem to bypass memory limitations.