awesome-repositories.com
Blog
awesome-repositories.com

Découvrez les meilleurs dépôts open-source grâce à notre recherche par IA.

ExplorerRecherches sélectionnéesAlternatives open sourceLogiciels auto-hébergésBlogPlan du site
ProjetÀ proposNotre méthodologiePresseServeur MCP
Mentions légalesConfidentialitéConditions d'utilisation
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·

13 dépôts

Awesome GitHub RepositoriesIn-Memory Databases with Persistence

Databases that prioritize in-memory processing for speed while maintaining real-time disk persistence for durability.

Distinct from In-Memory Buffering with WAL: Existing candidates focus on specific AI memory or time-series WAL buffers rather than general in-memory database architecture

Explore 13 awesome GitHub repositories matching data & databases · In-Memory Databases with Persistence. Refine with filters or upvote what's useful.

Awesome In-Memory Databases with Persistence GitHub Repositories

Trouvez les meilleurs dépôts grâce à l'IA.Nous recherchons les dépôts les plus pertinents grâce à l'IA.
  • microsoft/garnetAvatar de microsoft

    microsoft/garnet

    11,885Voir sur GitHub↗

    Garnet is a multi-threaded in-memory database and distributed key-value store. It functions as a high-performance remote cache store that implements the RESP wire protocol to maintain compatibility with existing Redis clients and libraries. The project is distinguished by a shared-memory architecture that enables parallel request processing across multiple cores for sub-millisecond latency. It features a tiered storage system that automatically offloads colder data from system memory to SSD or cloud storage layers, and includes a specialized vector search database for high-dimensional similar

    Combines sub-millisecond memory performance with append-only logging and checkpoints for durable data recovery.

    C#cachecache-storagecluster
    Voir sur GitHub↗11,885
  • beanstalkd/beanstalkdAvatar de beanstalkd

    beanstalkd/beanstalkd

    6,697Voir sur GitHub↗

    Beanstalkd is a distributed work queue server designed for asynchronous job processing. It functions as a standalone server that distributes background tasks between producers and consumers to improve application responsiveness and throughput. The system organizes tasks using numeric priority levels to ensure critical work is processed first. It manages the job lifecycle through discrete states and uses a simple line-based text protocol over TCP for communication. To ensure reliability, the server persists job data to a sequential disk log, allowing the queue state to be recovered after a sy

    Prioritizes in-memory processing for speed while utilizing a disk-based log for durability.

    C
    Voir sur GitHub↗6,697
  • hazelcast/hazelcastAvatar de hazelcast

    hazelcast/hazelcast

    6,570Voir sur GitHub↗

    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

    Buffers updates to external data stores to reduce request frequency and improve performance by decoupling operations.

    Javabig-datacachingdata-in-motion
    Voir sur GitHub↗6,570
  • hibernate/hibernate-ormAvatar de hibernate

    hibernate/hibernate-orm

    6,447Voir sur GitHub↗

    Hibernate ORM est un mapper objet-relationnel (ORM) Java et une implémentation complète de l'API Jakarta Persistence. Il sert de couche d'abstraction de base de données SQL qui traduit les modèles d'objets Java en schémas de base de données relationnelle pour gérer la persistance et le cycle de vie des données. Le framework se distingue par un framework d'isolation de données multi-tenant pour séparer les données des clients au sein d'une même instance de base de données. Il dispose également d'un générateur de schéma de base de données qui produit et met à jour automatiquement les structures relationnelles basées sur les mappings d'entités. Le système couvre des domaines étendus comme la gestion des transactions, le contrôle de verrouillage de concurrence et le suivi des données temporelles pour l'audit. Il fournit des outils d'optimisation de récupération de données via des stratégies d'entity-graph et prend en charge des types de données avancés comme les données vectorielles et les caractères nationalisés. Le projet inclut une suite complète d'utilitaires de test pour la couche de persistance, incluant le filtrage par dialecte de base de données et les tests de conformité aux spécifications.

    Tracks modifications made to objects in memory and automatically persists those changes to the underlying database.

    Java
    Voir sur GitHub↗6,447
  • kevinmusgrave/pytorch-metric-learningAvatar de KevinMusgrave

    KevinMusgrave/pytorch-metric-learning

    6,328Voir sur GitHub↗

    PyTorch Metric Learning is an open-source library for training neural networks to produce similarity-preserving embedding spaces. It provides a modular framework where interchangeable loss functions, mining strategies, and evaluation tools can be composed to learn representations that map similar items to nearby points and dissimilar items to distant points in the embedding space. The library distinguishes itself through a highly configurable architecture that separates concerns across several interchangeable components. Users can assemble custom loss functions from pluggable distance metrics

    Implements cross-batch memory queues that store embeddings from previous iterations for contrastive learning.

    Pythoncomputer-visioncontrastive-learningdeep-learning
    Voir sur GitHub↗6,328
  • go-ego/riotAvatar de go-ego

    go-ego/riot

    6,059Voir sur GitHub↗

    Riot est un moteur de recherche distribué et un serveur d'indexation basé sur Go, conçu pour l'indexation et la récupération en texte intégral. Il fonctionne comme un système de récupération qui trie les documents par pertinence en utilisant des algorithmes de classement BM25, la fréquence des termes et la fréquence inverse de document (TF-IDF). Le moteur fournit un support spécialisé pour la langue chinoise, avec une segmentation de texte concurrente et un mappage phonétique Pinyin pour faire correspondre les entrées romanisées avec les caractères. Il utilise une architecture distribuée qui emploie le sharding d'index basé sur le hachage pour équilibrer la charge de données et le débit sur plusieurs nœuds de serveur. Le système couvre un large éventail de capacités de recherche, incluant l'exécution de requêtes en logique booléenne, le filtrage de proximité et la gestion du cycle de vie de l'index en temps réel. Il maintient un index rapide et interrogeable en mémoire tout en utilisant un stockage sur disque pour la persistance et la durabilité des données. Des outils de surveillance sont inclus pour suivre l'utilisation de la mémoire, du disque et du CPU dans l'environnement distribué.

    Combines high-performance in-memory indexing with persistent disk storage to ensure data durability.

    Gogogolanggwk
    Voir sur GitHub↗6,059
  • springside/springside4Avatar de springside

    springside/springside4

    5,652Voir sur GitHub↗

    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

    Runs an embedded database with optional file persistence for development and testing.

    Java
    Voir sur GitHub↗5,652
  • rivet-dev/rivetAvatar de rivet-dev

    rivet-dev/rivet

    5,619Voir sur GitHub↗

    Rivet est une infrastructure distribuée pour gérer le cycle de vie, l'adressage et la persistance d'acteurs stateful et de moteurs d'exécution durables. Il fournit un sandbox de processus distribué qui exécute la logique applicative au sein d'isolats légers, garantissant l'isolation des ressources et des démarrages à froid rapides. Le système est conçu pour coordonner des opérations multi-étapes en utilisant des files d'attente persistantes et des minuteurs pour garantir l'achèvement fiable des tâches dans des environnements distribués. La plateforme permet spécifiquement l'orchestration d'agents IA stateful qui maintiennent une mémoire et un état persistants à travers des interactions de longue durée et des workflows complexes. Elle se distingue par un framework de synchronisation d'état WebSocket qui lie les composants d'interface utilisateur frontend aux processus stateful distants via une communication bidirectionnelle en temps réel. Le système couvre un large éventail de capacités, incluant l'adressage hiérarchique d'acteurs, un runtime « hibernate-on-idle » pour l'optimisation des ressources, et une couche de persistance enfichable pour des backends de stockage modulaires. Il inclut également des outils pour le débogage de session active, la surveillance de l'état d'exécution en temps réel, et des options de déploiement automatisé pour l'edge, le cloud ou l'infrastructure privée. Le projet est implémenté en Rust et prend en charge le développement d'acteurs multi-langages.

    Manages long-lived processes with in-memory state that is automatically synchronized to a database for high-performance access.

    Rustactoractorscloudflare
    Voir sur GitHub↗5,619
  • jabref/jabrefAvatar de JabRef

    JabRef/jabref

    4,373Voir sur GitHub↗

    This project is a desktop-based bibliographic reference manager designed to organize academic research libraries and automate citation workflows. It functions as a research assistant that integrates directly with word processors and text editors, enabling users to insert and format references while writing. The application is built on a Java-based portable runtime, allowing it to operate as a self-contained tool that stores preferences and data in local configuration files. The platform distinguishes itself through a modular plugin architecture and a commitment to human-readable, text-based f

    Saves the bibliographic database to disk immediately after every modification.

    Javaacademiaacademic-publicationsai
    Voir sur GitHub↗4,373
  • graphif/project-graphAvatar de graphif

    graphif/project-graph

    4,168Voir sur GitHub↗

    Project-graph est un espace de travail visuel conçu pour gérer des informations complexes via des graphes de connaissances basés sur des nœuds. Il fournit une interface de manipulation directe qui permet aux utilisateurs d'organiser les données en réseaux logiques, cartographiant les pensées non linéaires et les flux de travail de projet via des nœuds interconnectés et des liens bidirectionnels. Le système se distingue par un modèle de gestion d'état basé sur l'événementiel qui enregistre chaque modification comme une action discrète, permettant des capacités précises d'annulation et de rétablissement. Il intègre un moteur de mise en page réactif qui calcule automatiquement l'espacement des nœuds et les chemins de connexion lors de l'interaction pour maintenir la clarté visuelle et éviter le chevauchement des éléments. La plateforme prend en charge une gestion complète des connaissances visuelles, incluant des outils pour étiqueter les connexions, personnaliser la navigation de l'interface et structurer les données en graphes imbriqués. Pour garantir l'intégrité et les performances des données, le système utilise une persistance automatique en temps réel et une sérialisation binaire pour optimiser l'efficacité du stockage pour les grands jeux de données.

    Automatically persists document changes in real time to ensure continuous progress preservation.

    TypeScriptcanvascanvas2dcanvasjs
    Voir sur GitHub↗4,168
  • legendapp/legend-stateAvatar de LegendApp

    LegendApp/legend-state

    4,145Voir sur GitHub↗

    Legend-State is a reactive state management library for JavaScript applications that provides a centralized container for application data. It utilizes a fine-grained reactivity engine to track state access automatically, allowing developers to update and retrieve data without the need for boilerplate patterns like reducers, actions, or dispatchers. The library distinguishes itself through its hierarchical, path-based state addressing and proxy-based dependency tracking. By isolating state dependencies, it ensures that user interface updates are triggered only for the specific components that

    Automatically persists application state to local storage to ensure consistency across sessions.

    TypeScript
    Voir sur GitHub↗4,145
  • pluginaweek/state_machineAvatar de pluginaweek

    pluginaweek/state_machine

    3,722Voir sur GitHub↗

    Ce projet est une bibliothèque Ruby pour définir et gérer les cycles de vie des objets via des états, des événements et des règles de transition. Il fonctionne comme un moteur de workflow déclaratif qui applique la logique métier en restreignant les changements d'attributs à des chemins prédéfinis et valides au sein des classes Ruby. La bibliothèque se distingue par une intégration profonde avec les couches de persistance de base de données, lui permettant de synchroniser automatiquement les changements d'état avec les modèles de données, les frameworks de validation et la gestion des transactions. Elle prend en charge la configuration dynamique, permettant la construction de règles de cycle de vie au runtime à partir de sources de données externes, et fournit des outils de diagnostic tels que la visualisation graphique des relations d'état et l'analyse des chemins de transition pour auditer les workflows complexes. Au-delà de la gestion des transitions de base, le framework inclut un système de hooks piloté par des callbacks pour exécuter une logique personnalisée lors des mises à jour du cycle de vie et fournit des méthodes pour interroger le statut actuel de l'objet ou vérifier les transitions autorisées. Il dispose également d'une injection de méthode dynamique pour gérer les requêtes d'état et le déclenchement d'événements directement sur les objets.

    Synchronizes state changes with database layers to handle validation, transactions, and persistence.

    Ruby
    Voir sur GitHub↗3,722
  • falkordb/falkordbAvatar de FalkorDB

    FalkorDB/FalkorDB

    3,437Voir sur GitHub↗

    FalkorDB is a high-performance graph database management system and vector graph database. It serves as a knowledge graph construction tool and a GraphRAG knowledge store, integrating structured property graphs with vector search to provide grounded context for large language models. The engine is designed as a multi-tenant graph engine, capable of hosting thousands of isolated datasets within a single instance. The system distinguishes itself by using linear algebra for query execution, treating relationship tensors as matrix multiplications to achieve low-latency multi-hop traversals. It ut

    Combines high-speed memory operations for queries with real-time disk persistence to ensure data durability.

    Ccloud-databasedatabasedatabase-as-a-service
    Voir sur GitHub↗3,437
  1. Home
  2. Data & Databases
  3. In-Memory Databases with Persistence

Explorer les sous-tags

  • Automatic State Persistence2 sous-tagsMechanisms that track in-memory object modifications and automatically persist them to the database. **Distinct from In-Memory Databases with Persistence:** Distinct from In-Memory Databases with Persistence: refers to the synchronization of application-level objects, not the storage engine architecture.
  • Persistent Memory ExtensionsUtilizes persistent memory hardware as volatile storage to increase capacity without code changes. **Distinct from Persistent Memory Caching:** Distinct from In-Memory Databases with Persistence: focuses on hardware-level memory extension rather than database-level persistence strategies.
  • Write-Behind Change TrackingTracks modifications to in-memory objects and persists them to the database to synchronize state. **Distinct from In-Memory Databases with Persistence:** Focuses on tracking object changes for persistence rather than the internal architecture of an in-memory database