14 repositorios
Architectures that layer memory storage over persistent disk storage for performance.
Distinct from Persistent Storage Providers: Focuses on the layering of memory and disk, distinct from general persistence providers.
Explore 14 awesome GitHub repositories matching data & databases · Memory-Disk Layering. Refine with filters or upvote what's useful.
This project is a reactive, offline-first NoSQL database engine designed for JavaScript applications. It provides a robust framework for managing application state by synchronizing data across browsers, mobile devices, and server-side runtimes. By treating local storage as the primary source of truth, it enables applications to remain functional without network connectivity, automatically reconciling changes with remote backends once a connection is restored. The database distinguishes itself through a modular architecture that supports cross-environment synchronization and high-performance d
Combines high-speed memory storage with background disk replication to optimize query performance while ensuring long-term data durability.
Vector is a high-performance observability data pipeline designed to collect, transform, and route logs, metrics, and traces across distributed infrastructure. It functions as a modular engine that decouples data ingestion from processing and transmission, utilizing a component-based architecture to connect diverse sources to multiple destinations. The project distinguishes itself through a focus on reliability and flow control. It implements backpressure-aware data movement to prevent data loss during traffic spikes and utilizes disk-backed event buffering to ensure durability during network
Routes overflow events between memory and disk storage layers to balance speed and durability.
Presto is a distributed SQL query engine designed for high-performance analytical processing across heterogeneous data sources. It functions as a data federation platform and massively parallel processing engine, allowing users to execute interactive queries against diverse storage systems without requiring data migration. By mapping remote metadata and structures to a unified relational namespace, it enables seamless cross-platform analysis through a standard SQL interface. The engine distinguishes itself through a pluggable connector architecture and a shared-nothing distributed processing
Offloads intermediate query results to disk when memory thresholds are exceeded to ensure stability during large-scale analytical processing.
Annoy is a C++ library designed for approximate nearest neighbor search in high-dimensional vector spaces. It functions as a vector similarity search engine that constructs static, disk-based data structures to facilitate fast lookups. By mapping identifiers to vector data and persisting these structures to disk, the library enables efficient, memory-mapped access to large datasets. The project distinguishes itself through the use of random projection trees and distance-metric-based partitioning, which organize data into hierarchical binary trees to balance search precision against computatio
Persists search structures to disk, allowing large datasets to be shared across processes without requiring full memory residency.
Dask es un framework de computación paralela y un programador de tareas distribuido diseñado para escalar flujos de trabajo de ciencia de datos en Python desde máquinas individuales hasta grandes clústeres. Funciona como un gestor de recursos de clúster que orquesta la lógica computacional representando las tareas y sus dependencias como grafos acíclicos dirigidos. Esta arquitectura permite al sistema automatizar la distribución de cargas de trabajo a través del hardware disponible mientras gestiona requisitos de ejecución complejos. El proyecto se distingue por un motor de evaluación perezosa que difiere las operaciones de datos hasta que se solicitan explícitamente, permitiendo la optimización global del grafo y una asignación eficiente de recursos. Incorpora el volcado de datos consciente de la memoria para evitar fallos del sistema al procesar conjuntos de datos que exceden la memoria disponible, y utiliza la fusión de grafos de tareas para combinar secuencias de operaciones en pasos de ejecución únicos, minimizando la sobrecarga de programación y la comunicación entre nodos. La plataforma proporciona una superficie de capacidades integral para el análisis de datos a gran escala, incluyendo soporte para aprendizaje automático distribuido, integración de computación de alto rendimiento y procesamiento de datos en paralelo. Ofrece herramientas extensas para la gestión del ciclo de vida del clúster, perfilado de rendimiento y monitoreo en tiempo real de la ejecución de tareas. Los usuarios pueden desplegar estos entornos en diversas infraestructuras, incluyendo hardware local, proveedores de nube, sistemas en contenedores y clústeres de computación de alto rendimiento.
Monitors memory usage during computation and offloads intermediate results to disk to prevent system crashes.
OpenRefine is a data cleaning tool and wrangling platform used to transform raw, messy datasets into consistent and structured formats. It operates as a Java-based data processor that runs a local server and provides a web browser interface for managing and manipulating data. The platform includes a data reconciliation engine for matching local entries against external knowledge bases to standardize entities. It also functions as a web data augmentation tool, allowing users to fetch and integrate information from external web sources to enrich their datasets. The system provides a transforma
Implements memory-to-disk spillover to handle datasets that exceed available RAM.
FASTER is a high-throughput key-value store that combines an in-memory data store with a hybrid memory-disk storage engine, enabling datasets larger than available RAM. It uses a latch-free, cache-optimized index for concurrent point lookups and heavy updates, and records all mutations to a persistent append-only log on disk with checksum validation and group-commit checkpointing for crash recovery. The system supports multi-key transactional workloads through atomic multi-key locking, ensuring transactional consistency without coarse-grained contention. It exposes the key-value store to remo
Keeps hot data in memory and seamlessly spills cold data to fast local or cloud storage.
Materialize is a streaming SQL database that continuously ingests live data from sources such as Kafka, Redpanda, PostgreSQL, and MySQL, and incrementally maintains materialized views. It provides a PostgreSQL-compatible query engine that accepts standard SQL over the PostgreSQL wire protocol, enabling any existing SQL client or BI tool to query real-time data. The system also includes a Model Context Protocol (MCP) server that exposes live materialized view data to AI agents, providing fresh context without polling. Materialize distinguishes itself through its ability to offer configurable c
Offloads large key-value state to disk automatically when using upsert or Debezium envelopes.
PikiwiDB es una base de datos NoSQL distribuida y almacén de clave-valor basado en disco que sirve como servidor de protocolo compatible con Redis. Está diseñado para manejar datasets más grandes que la memoria disponible del sistema utilizando un motor de persistencia que almacena el dataset completo en disco. El sistema emplea un modelo de almacenamiento por niveles, almacenando en caché los datos calientes accedidos frecuentemente en memoria mientras mantiene el volumen principal en disco. Asegura una alta disponibilidad a través de una arquitectura de almacén de datos replicado, utilizando logs binarios asíncronos para sincronizar datos entre nodos primarios y secundarios. El proyecto soporta el escalado de bases de datos distribuidas mediante sharding de datos basado en clusters y organiza los datos en grupos para expandir la capa de almacenamiento. Sus capacidades operativas incluyen monitoreo del rendimiento del sistema para rastrear la utilización de recursos y soporte para despliegue contenedorizado.
Employs a tiered storage model that layers in-memory caching over a persistent disk-based storage engine.
SparkInternals es una referencia técnica y guía de arquitectura que detalla el diseño interno y la implementación del motor de computación distribuida Apache Spark. Sirve como un estudio de análisis de motores de big data, centrándose en cómo el sistema gestiona la ejecución en clúster y la interacción entre nodos driver, ejecutores y workers. El proyecto proporciona un desglose detallado de cómo los planes lógicos se convierten en etapas de ejecución física. Analiza específicamente la mecánica de las operaciones de shuffle de datos, la gestión de memoria y la coordinación de la programación de trabajos distribuidos. La documentación cubre una amplia gama de capacidades de computación distribuida, incluyendo la planificación de ejecución de consultas, la gestión de dependencias de datos y estrategias de caché en memoria. También examina la distribución de tareas, la ejecución paralela y los procesos utilizados para la recuperación ante fallos y la persistencia de datos.
Offloads sorted key-value pairs to local disk when internal memory limits are exceeded during shuffles.
android-common is a collection of shared utility components and framework libraries for Android development. It provides specialized toolkits for reverse engineering, system utility management, data caching, and high-performance user interface components. The project includes a reverse engineering toolkit for inspecting application internals through package decompilation and manifest data extraction. It also features a system utility toolkit for managing file operations and executing shell commands within the Android operating system. The library covers several capability areas, including da
Balances volatile memory for fast access with persistent disk storage for long-term asset retention.
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. The project distinguishes itself through its comprehensive coverage of core database concepts in a single, learnable c
Manages disk page loading into a fixed-size memory pool with eviction for efficient access.
Velox es un motor de ejecución de consultas en C++ de alto rendimiento y biblioteca de procesamiento de datos columnares. Sirve como un framework componible para implementar motores de consulta analíticos, proporcionando un evaluador de expresiones vectorizadas y un toolkit para sistemas de gestión de datos. El proyecto se distingue por su uso de ejecución columnar vectorizada y asignación de memoria basada en arena para procesar conjuntos de datos a gran escala. Cuenta con optimizaciones especializadas como caché de tablas de broadcast join, push-down de filtros dinámicos y codificación de diccionario para reducir la sobrecarga de memoria y acelerar las lecturas analíticas. El motor cubre una amplia gama de capacidades analíticas, incluyendo la implementación de hash, merge y semi joins, así como agregación paralela multietapa y cálculo de funciones de ventana. Proporciona primitivas para almacenamiento columnar en memoria, decodificación de datos Parquet e integración con almacenamiento en la nube. La extensibilidad se proporciona a través de un sistema de registro de funciones para funciones escalares y agregadas personalizadas, con bindings de alto nivel disponibles para conectar la lógica de C++ a Python.
Controls memory resource usage via arena allocation and spills intermediate data to disk when limits are exceeded.
Kùzu is an embedded property graph database engine designed for high-performance analytical queries and local data management. It operates as a library within the host application process, utilizing a columnar-based storage architecture and just-in-time query compilation to execute complex graph traversals and pattern matching efficiently. By mapping database files directly into system memory, it ensures data durability and high-speed access while maintaining ACID-compliant transactional integrity. The engine distinguishes itself by integrating vector similarity search and full-text search di
Offloads intermediate query results to temporary disk storage when memory limits are reached to ensure processing stability.