27 dépôts
Architectural abstractions that allow swapping diverse cloud and on-premises storage providers.
Distinct from Pluggable Storage Engines: Distinct from Pluggable Storage Engines which focus on database persistence engines rather than general cloud storage backends.
Explore 27 awesome GitHub repositories matching data & databases · Pluggable Storage Backends. Refine with filters or upvote what's useful.
Mempalace is a local-first long-term memory store for large language models and AI agents. It provides a persistent storage system for verbatim conversation history and agent data, utilizing a local-first knowledge graph to track evolving entity relationships and timelines. The project implements a standardized memory protocol that allows external AI clients to read and write persistent memory via standard input and output. It features a hybrid semantic search engine that combines keyword boosting and reranking to find precise historical information across scoped categories. The system inclu
Provides an abstraction layer for swapping between different database engines and remote vector stores.
CodiMD is a real-time collaborative markdown editor and self-hosted knowledge base. It provides a shared workspace where multiple users can write and format notes using markdown syntax simultaneously. The platform extends basic editing by transforming markdown content into interactive mind maps for data visualization and structured visual slides for presentations. It functions as an OAuth compatible note server, integrating with external identity providers to manage user authentication and access control. The system supports self-hosting and cloud platform deployment, allowing users to maint
Features an abstraction layer that allows switching between local disk and remote database storage backends.
elasticsearch-dump is a command-line tool for importing and exporting data, mappings, and settings between Elasticsearch and OpenSearch clusters. It serves as a backup and restore system, a data transfer utility for cross-cluster migrations, and a bridge for streaming search index data to and from S3-compatible storage. The tool functions as a JSON index data transformer, allowing the use of custom JavaScript modules to modify or anonymize documents in flight during the migration process. It also enables the creation of search bodies using external JavaScript templates to customize the data b
Implements a common interface to abstract read and write operations across local files, S3 buckets, and standard I/O.
Noms is a distributed version control database and content-addressable data store. It identifies data by cryptographic hashes to ensure integrity and deduplication, while tracking dataset state changes through a sequence of immutable commits to enable branching, forking, and historical recovery. The system functions as a peer-to-peer data synchronizer, reconciling state between disconnected database instances to ensure all nodes converge on the same data. It distinguishes itself as a schema-flexible document store that supports self-describing types, allowing schemas to evolve and widen as ne
Features pluggable storage backends that abstract data persistence across local file systems and remote cloud buckets.
Alluxio is a virtual distributed file system and data orchestration layer that serves as a high-performance caching layer between cloud storage and compute clusters. It acts as a distributed data cache designed to accelerate data access for large-scale analytics and machine learning workloads. The system provides a unified interface that presents multiple heterogeneous storage backends as a single coherent namespace. This allows for the unification of diverse storage systems, enabling computation engines to access data from different providers without changing application code. The project c
Integrates with various cloud and on-premises storage providers through a common pluggable abstraction layer.
gopass is a terminal-based password manager and GPG secret store used for generating, storing, and retrieving encrypted credentials. It functions as a collaborative secret manager that encrypts data using GPG or age and synchronizes it across devices and teams using Git. The system distinguishes itself by treating version control repositories as the primary storage backend, enabling secure secret sharing and version history for credentials. It utilizes a hierarchical directory structure to organize secrets on the filesystem and supports multi-store mounting to combine multiple independent rep
Provides an abstraction layer to connect with various storage backends like Consul and Vault.
SpiceDB is a distributed permission store and relationship-based access control system. It provides a scalable database for storing and querying fine-grained authorization relationships, implementing a consistency model inspired by Google Zanzibar to manage access rights across large-scale applications. The system uses a dedicated schema language to define the rules and logic governing how relationships translate into permissions independently of application code. It functions as a pluggable authorization engine that persists relationship tuples in external relational databases such as Postgr
Features a pluggable architecture for swapping between different relational storage backends like Postgres, MySQL, and Spanner.
This project is a multimodal AI proxy and content generation hub that provides a unified web interface for interacting with multiple large language models and generative AI services. It functions as a secure API access gateway, routing requests from a single dashboard to various external AI backends using configurable base URLs and API keys. The platform is delivered as a cross-platform progressive web application, allowing for installation on Linux, Windows, and MacOS. It distinguishes itself by consolidating text, image, audio, and video generative controls into a standardized interface, su
Allows swapping between local browser storage and external cloud providers for generated assets.
Feast is an open-source feature store for machine learning that provides a central platform for defining, storing, and serving features across both training and inference workflows. It operates as a declarative system where feature definitions are written as code in Python files, synchronized to a central registry, and made available for low-latency online retrieval or point-in-time correct historical joins for training datasets. The project abstracts storage behind a pluggable architecture, allowing offline and online backends to be swapped without changing retrieval logic, and coordinates ma
Provides a pluggable abstraction layer that allows swapping offline and online storage backends without changing retrieval code.
Apache Zeppelin is a web-based notebook platform for interactive data analytics that supports executing code in over 20 languages within a single notebook. It provides a plugin-based interpreter architecture that allows the notebook to be extended with new languages and data sources, and includes a JDBC connector abstraction for connecting to any JDBC-compliant database. The platform also features session-isolated interpreter contexts, enabling separate interpreter instances per notebook or user with support for dependency injection and user impersonation. The platform distinguishes itself th
Saves notebooks to Git, S3, Azure, GCS, or MongoDB through a pluggable storage backend interface.
Cronicle is a distributed job scheduler that replaces traditional cron with a browser-based management interface. It runs scheduled tasks across a cluster of servers with automatic failover, using a custom cron parser that intersects day-of-month and day-of-week constraints when both are specified. The system executes jobs through a plugin framework that runs command-line scripts in any language, communicating via JSON over standard input and output. The scheduler provides a web-based real-time dashboard for monitoring running jobs with live logs, resource usage charts, and progress updates.
Supports pluggable storage backends including local disk, Couchbase, and S3-compatible services for persisting all data.
Certmagic est une bibliothèque Go pour automatiser l'émission et le renouvellement de certificats TLS. Il fonctionne comme un provisionneur HTTPS automatique et un client ACME qui gère le cycle de vie complet des certificats pour garantir une connectivité sécurisée sans intervention manuelle. La bibliothèque se distingue par sa prise en charge du provisionnement TLS à la demande, qui génère des certificats dynamiquement pendant la poignée de main TLS en fonction du nom du serveur. Elle fournit également une automatisation pour les certificats wildcard via la vérification de défi DNS et s'intègre à l'API ZeroSSL pour l'acquisition de certificats. Le projet couvre un large éventail de capacités, notamment la résolution de défis ACME, la planification du renouvellement automatisé et la révocation de certificats. Il gère la persistance des données via des backends de stockage enfichables et implémente le verrouillage et la synchronisation distribués pour coordonner la gestion des certificats à travers les clusters de serveurs. La fonctionnalité supplémentaire inclut l'agrafage OCSP, la mise en cache en mémoire et la génération de configurations TLS pour des serveurs personnalisés.
Provides a pluggable key-value interface for persisting certificates and metadata via file systems or databases.
dlt est un outil d'ingestion de données Python et un framework de pipeline ETL conçu pour récupérer des données depuis diverses sources et les persister dans des destinations structurées. Il fonctionne comme un moteur d'inférence de schéma qui détecte automatiquement les types de données et aplatit les structures JSON imbriquées en tables relationnelles, déplaçant les données des sources vers des lakehouses, des entrepôts ou des bases de données vectorielles. Le projet se distingue par une génération de pipeline alimentée par l'IA, utilisant de grands modèles de langage pour échafauder le code d'extraction et les connecteurs pour les API REST. Il prend également en charge le stockage vectoriel multimodal et la population spécialisée de bases de données vectorielles pour prendre en charge les applications d'IA et de machine learning. Le framework couvre un large éventail de capacités, incluant l'évolution automatique du schéma, le chargement incrémentiel de données via le suivi d'état et la validation de la qualité des données par l'application de contrats de données. Il fournit des outils pour la normalisation des données relationnelles, les transformations pré- et post-chargement, et une variété d'adaptateurs de destination pour les bases de données SQL et les magasins d'objets cloud. L'observabilité est gérée via des tableaux de bord d'exécution de pipeline, le suivi de lignage des colonnes et la vérification de version de schéma utilisant des hachages basés sur le contenu.
Routes processed data to diverse storage targets like lakehouses or vector databases via a unified interface.
Waterline est une bibliothèque de base de données basée sur des adaptateurs et un ORM (Object Relational Mapper) pour Node.js. Il sert de couche de persistance multi-base de données qui traduit les appels de méthodes standards en requêtes spécifiques pour les bases de données SQL et NoSQL. La bibliothèque fournit une interface unifiée pour gérer les données à travers différents stockages, notamment MySQL, PostgreSQL, MongoDB et Microsoft SQL Server. Cette architecture permet l'intégration de plusieurs backends de base de données au sein d'une même application et facilite la migration entre fournisseurs de bases de données en changeant simplement d'adaptateur sans modifier la logique métier. Le projet couvre le mapping relationnel et documentaire, offrant une syntaxe cohérente pour stocker et récupérer des données. Il utilise un mapping d'objets basé sur un schéma pour faire le pont entre les tables ou collections de base de données et les objets JavaScript.
Utilizes a pluggable architecture that allows external modules to implement specific database protocols as storage backends.
Ce projet est le site web officiel de documentation de Kubernetes, servant de ressource technique complète pour la gestion d'applications conteneurisées. Il fonctionne comme un portail de documentation technique open-source qui fournit des guides, des tutoriels et des matériaux de référence pour les logiciels de systèmes distribués. Le site est construit en utilisant un générateur de site statique avec une architecture de template basée sur des composants pour maintenir des modèles de design cohérents. Il dispose d'un générateur de documentation OpenAPI qui analyse les spécifications techniques pour construire et mettre à jour automatiquement les pages de référence d'API structurées. Pour soutenir une audience mondiale, il emploie un routage de contenu conscient de l'internationalisation pour gérer les versions localisées des manuels. Le workflow de développement inclut un serveur à rechargement à chaud pour prévisualiser les changements du site et un rendu de langue ciblé pour accélérer les temps de build. Le projet couvre un large éventail de domaines techniques, incluant l'orchestration de cluster, la configuration réseau et la gestion des ressources.
Provides a standardized interface to mount diverse external storage backends into containers.
ezbookkeeping est un gestionnaire de finances personnelles auto-hébergé conçu pour suivre les revenus et les dépenses. Il fonctionne comme un outil de comptabilité multi-devises qui gère les soldes de comptes et le patrimoine global via une application privée. Le système se distingue par l'intégration d'un processeur de transactions basé sur un modèle de langage pour extraire des données à partir d'images de reçus et automatiser la saisie financière. Il fournit également une API financière REST et un client en ligne de commande associé, permettant l'automatisation financière par programmation et l'intégration des enregistrements avec des scripts externes. La plateforme inclut un tableau de bord d'analyse de données financières pour générer des graphiques de tendances de dépenses et des diagrammes de répartition. Elle couvre une gestion complète des données via des catégories et des tags personnalisés, une gestion d'actifs multi-devises avec synchronisation automatique des taux de change, et un contrôle d'accès sécurisé avec authentification multifacteur. Les données peuvent être persistées dans des répertoires locaux ou sur un stockage cloud distant, et l'interface utilisateur prend en charge la localisation via des fichiers de traduction dédiés et des configurations de formatage régional.
Supports saving application records to either local directories or remote cloud storage backends.
Incus is a unified orchestration platform for managing system containers, OCI application containers, and virtual machines through a single control plane. It brings together cluster infrastructure management, secure multi-tenancy, software-defined networking, and pluggable storage backend orchestration into one cohesive system exposed via a full REST API and command-line interface. What distinguishes Incus is its ability to run multiple instance types side by side—full Linux system containers, OCI application containers, and QEMU virtual machines—all managed with consistent tooling. Networkin
Abstraction layer supports multiple storage backends including Btrfs, ZFS, LVM, Ceph, and LINSTOR.
Dkron is a distributed, fault-tolerant system designed for scheduling and executing recurring tasks across a cluster of nodes. It functions as a cron-based orchestrator that manages job lifecycles, including automatic retries, timeouts, and complex dependencies, while ensuring state consistency through a consensus protocol. By coordinating remote task execution across infrastructure, it enables the automation of background operations and the management of distributed workflows. The system distinguishes itself through a modular architecture that supports pluggable storage backends and a plugin
Abstracts job persistence and cluster configuration into interchangeable drivers to support various distributed key-value stores or databases.
myDrive est un serveur de stockage cloud auto-hébergé et un gestionnaire de fichiers basé sur le web. Il fonctionne comme un système de stockage de fichiers chiffré qui permet aux utilisateurs d'héberger et de gérer des documents personnels et des médias sur leur propre matériel. Le système agit comme une passerelle de stockage multi-backend, capable de router les données de fichiers vers divers emplacements, incluant des disques locaux ou des buckets de stockage cloud distants. Il utilise une base de données documentaire pour gérer les métadonnées des fichiers, les structures de dossiers et l'organisation des utilisateurs. La plateforme fournit des capacités pour télécharger et envoyer des fichiers, organiser le contenu via un système de corbeille et partager des fichiers privés via des liens sécurisés. Elle inclut une interface web pour la gestion multimédia à distance avec des vignettes et des aperçus multimédias intégrés. L'accès est sécurisé via une authentification par email et un chiffrement des données conforme aux normes de l'industrie.
Provides an architectural abstraction that allows swapping between local disks and remote cloud storage buckets.
Hawk is a secure local storage library and persistence API for Android. It provides a framework for saving and retrieving primitives, objects, and collections using a key-value storage system. The library features an encrypted storage wrapper that secures data through a pluggable crypto provider, including a fallback mechanism to non-encrypted mode. Its architecture allows for custom storage backend implementations and interface-based component injection to replace default serialization, parsing, and conversion processes. The system supports type-preserving serialization and includes utiliti
Decouples business logic from storage by allowing the swap of diverse storage backend implementations.