25 repository-uri
Layers that standardize communication between applications and various database protocols.
Distinguishing note: Focuses on the abstraction layer itself rather than individual drivers.
Explore 25 awesome GitHub repositories matching data & databases · Database Driver Abstractions. Refine with filters or upvote what's useful.
DBeaver is a universal database client and administration environment designed for managing diverse relational and non-relational database systems. It provides a unified graphical interface that enables users to perform data manipulation, schema migration, and performance monitoring across multiple platforms. By utilizing a standardized driver abstraction layer, the application translates generic requests into database-specific commands, ensuring consistent interaction regardless of the underlying technology. The project distinguishes itself through an extensible, plugin-based architecture th
Standardizes database interactions through a unified abstraction layer for multiple protocols.
Redash is a self-hosted analytics platform and SQL data visualization tool. It provides a web-based SQL query editor for writing, executing, and scheduling database queries, and functions as a business intelligence dashboard for monitoring metrics via visual widgets. The platform distinguishes itself through its data source connectors, which integrate with various SQL, NoSQL, and API-based stores to retrieve information for analysis. It enables self-service analytics by allowing users to run queries with dynamic parameters and supports shared data reporting via public links or embedded dashbo
Implements a standardized abstraction layer to ensure uniform query execution across diverse SQL and NoSQL drivers.
Mongoose is an object data modeling library and framework for Node.js that maps application objects to MongoDB documents. It functions as a document mapper and schema validator, ensuring consistent data types and validation rules for records stored in MongoDB. The project provides a system for defining structured schemas to model application data, including the ability to create hierarchical data structures through nested schema composition. It implements a middleware-based hook system that allows for the interception and modification of data states during the lifecycle of database operations
Wraps the native database driver to provide high-level object modeling while preserving access to low-level collections.
Chat2DB is an AI-powered SQL client and multi-database GUI manager designed for managing various relational and NoSQL database systems. It serves as a visual database management tool and a natural language to SQL interface, allowing users to convert plain text descriptions into executable and optimized queries. The platform distinguishes itself through automated business intelligence capabilities, which include the generation of real-time data visualization dashboards and AI-driven data analysis from spreadsheets. To ensure data privacy, it supports secure local AI deployment, enabling large
Provides a unified interface for interacting with diverse relational and NoSQL engines through standardized database adapters.
This project is an instructional user guide and software development workflow tutorial designed to help users master a professional integrated development environment. It provides educational content and step-by-step instructions for optimizing coding productivity and navigating development tools across various language versions. The material specifically covers the configuration of Java-centric environments, including setting up the operating system, managing dependencies, and tuning memory settings. It offers detailed guidance on utilizing professional tools to streamline development proces
Explains how to use a unified interface to interact with various relational data stores via JDBC drivers.
Neo4j is a native graph database management system designed to store and query highly connected data using a property-graph model. It provides an ACID-compliant transaction engine that ensures data integrity, supported by a distributed cluster architecture that maintains causal consistency across nodes. Users interact with the system through a declarative query language, which allows for complex pattern matching and path traversal without requiring manual traversal logic. The platform distinguishes itself through its hybrid approach to data retrieval, combining traditional graph-based queries
Standardizes communication between applications and the database engine through consistent driver protocols.
Skynet is a distributed game server framework designed for building scalable online game backends. It utilizes distributed actor-based clusters and real-time network communication to manage high-concurrency session coordination across multiple nodes. The framework includes a cluster management orchestrator for coordinating services via cluster-wide messaging and dynamic configuration updates. It features a multi-protocol network gateway supporting TCP, UDP, and WebSockets, alongside a data encoding layer using BSON and Sproto serialization for efficient information transfer between distribute
Features a driver-based persistence layer that abstracts database interactions through a consistent interface for various backends.
Peewee is a SQL object-relational mapper and query builder that provides an object-oriented interface for mapping application classes to relational database tables. It functions as a relational database toolkit for managing schemas, executing migrations, and handling complex table relationships. The project distinguishes itself by providing an asyncio database driver for non-blocking database operations, ensuring event loop responsiveness. It also supports semi-structured data storage, allowing the storage and querying of flexible JSON documents within traditional relational database systems.
Abstracts database-specific syntax through a common API layer for multiple SQL dialects.
SQLAlchemy is a comprehensive Python SQL toolkit and object-relational mapper that provides a full suite of tools for interacting with relational databases. It serves as a foundational layer for database connectivity, offering both a high-level object-oriented interface for data persistence and a programmatic SQL expression language for constructing complex, dialect-agnostic queries. The project distinguishes itself through its sophisticated unit of work persistence, which coordinates atomic transactions and tracks object state changes to minimize redundant database operations. It provides a
Provides a unified interface for database communication by abstracting vendor-specific behaviors into modular driver implementations.
This project is a SQL database abstraction layer that provides a consistent object-oriented interface for interacting with multiple relational database systems. It includes a driver wrapper to standardize connections and result sets, a fluent query builder for constructing portable SQL statements, and a type mapper for converting database-specific data types into native application types and vice versa. The library enables programmatic schema management through a schema manager that can introspect database metadata, model structures as objects, and generate the SQL required to migrate between
Implements a driver wrapper that standardizes connections and result sets across various relational database vendors.
Sea-ORM is an asynchronous SQL object-relational mapper and database toolkit for mapping relational tables to strongly typed objects. It provides a relational database mapper for performing CRUD operations across MySQL, PostgreSQL, and SQLite, and includes a programmatic dynamic query builder for constructing complex SQL statements. The project distinguishes itself by providing a GraphQL schema generator that transforms database entities into typed schemas with built-in pagination and filters. It also features a dedicated database migration tool for defining and applying versioned schema chan
Decouples business logic from specific database engines by deferring syntax and driver resolution to runtime configuration.
Adminer is a PHP-based database management tool and multi-engine database client. It provides a web-based graphical interface for administering various relational and document database engines. The application is distributed as a single file to simplify installation and deployment on web servers. It supports customization through external stylesheets for visual themes and a plugin architecture to extend core functionality and system behaviors. The tool covers database schema administration, including the creation of views and management of foreign keys. It includes a SQL query editor with au
Provides a database driver abstraction layer to support multiple relational and document-oriented database engines.
Records este o suită de instrumente care oferă o bibliotecă client pentru baze de date SQL, un manager de tranzacții și utilitare pentru accesul din linia de comandă și exportul datelor. Acesta funcționează ca un wrapper subțire care execută interogări SQL brute împotriva bazelor de date relaționale pentru a prelua rezultate în formate de date simplificate. Proiectul include o interfață de linie de comandă pentru rularea interogărilor bazei de date și un instrument dedicat de export al datelor care convertește rezultatele interogărilor relaționale în fișiere CSV, JSON sau Excel pentru analiză externă. Biblioteca acoperă gestionarea bazelor de date relaționale prin controlul tranzacțiilor atomice cu suport pentru commit și rollback. Gestionează securitatea prin parametrizarea SQL pentru a preveni vulnerabilitățile de injecție și include capabilități pentru execuția interogărilor în masă pentru a reduce overhead-ul de rețea.
Implements an abstraction layer that standardizes communication between application code and various database drivers.
SQLDelight is a Kotlin database library that validates SQL schema, statements, and migrations at compile time, generating type-safe Kotlin query functions from labeled SQL files. It treats SQL as the source of truth for database definitions, catching schema errors during the build process before they reach production. The library supports multiple database dialects including SQLite, MySQL, PostgreSQL, HSQL, and H2, and generates platform-specific code for Android, iOS, JVM, and JavaScript targets. It provides a platform-specific driver abstraction that handles database connectivity difference
Provides a common database access interface with platform-specific implementations for Android, native, JVM, and JavaScript.
SQL Chat is a Docker-deployed chat interface that translates natural language questions into SQL queries and executes them against connected databases. It uses a large language model to generate SQL from plain English instructions, supporting both querying and record modification through INSERT, UPDATE, and DELETE statements within the chat conversation flow. The application connects to MySQL, PostgreSQL, MSSQL, TiDB Cloud, and OceanBase databases through a unified driver abstraction layer, allowing users to interact with multiple database types from a single chat interface. Users provide the
Provides a unified interface for connecting to multiple database types through a common driver abstraction.
Tortoise ORM is an asynchronous object-relational mapper for Python that mirrors Django's model and queryset API while running on asyncio. It defines database tables as Python classes with typed fields and supports foreign key, many-to-many, and one-to-one relations, providing a chainable query API for filtering, annotating, grouping, and prefetching related objects without blocking the event loop. The ORM includes a built-in migration engine that detects model changes, generates migration files, and applies or reverts schema changes through a command-line tool. It connects to PostgreSQL, MyS
Connects to PostgreSQL, SQLite, MySQL, MSSQL, and Oracle through pluggable async drivers without changing application code.
Waterline este o bibliotecă de baze de date bazată pe adaptoare și un ORM (object relational mapper) pentru Node.js. Acesta servește ca un strat de persistență multi-bază de date care traduce apelurile standard de metode în interogări specifice pentru baze de date SQL și NoSQL. Biblioteca oferă o interfață unificată pentru gestionarea datelor în diferite stocuri, inclusiv MySQL, PostgreSQL, MongoDB și Microsoft SQL Server. Această arhitectură permite integrarea mai multor backend-uri de baze de date într-o singură aplicație și facilitează migrarea între furnizorii de baze de date prin schimbarea adaptoarelor, fără a modifica logica de business. Proiectul acoperă maparea relațională și de documente, oferind o sintaxă consistentă pentru stocarea și preluarea datelor. Utilizează maparea obiectelor bazată pe schemă pentru a face legătura între tabelele sau colecțiile bazei de date și obiectele JavaScript.
Provides a standardized abstraction layer that decouples the application from specific database driver implementations.
CloudBeaver este un manager de baze de date web și un IDE de baze de date în cloud care oferă o interfață de browser centralizată pentru administrarea bazelor de date SQL și NoSQL. Funcționează ca un instrument de administrare multi-bază de date și un gateway de acces la baze de date RBAC, permițând utilizatorilor să gestioneze diverse motoare de baze de date relaționale și bazate pe documente printr-o singură instalare bazată pe server. Platforma se distinge prin integrarea unui asistent de inteligență artificială pentru generarea și optimizarea SQL în limbaj natural. De asemenea, suportă ingineria datelor colaborativă prin coordonarea operațiunilor bazei de date între echipe prin gestionarea centralizată a accesului și permisiuni bazate pe roluri. Sistemul acoperă o gamă largă de capabilități, inclusiv explorarea vizuală a datelor prin browsere de schemă bazate pe arbore și editoare bazate pe grilă, precum și gestionarea cuprinzătoare a conexiunilor și utilitare de transfer de date. Include, de asemenea, instrumente specializate pentru descoperirea și gestionarea resurselor de baze de date găzduite de furnizorii de servicii cloud. Aplicația este implementată ca un sistem client-server, permițând administrarea bazei de date de la distanță printr-un browser web.
Uses a driver-based abstraction layer to standardize interactions across diverse SQL and NoSQL database engines.
Rainfrog is a terminal-based database client that connects to multiple database engines, combining schema browsing, interactive SQL query execution, and inline data editing into a single terminal interface. It provides a tree navigator for exploring tables, columns, and indexes, and an inline cell editor that automatically constructs and executes the necessary UPDATE statements when a cell value is changed. The application also supports modal Vim-style keyboard shortcuts for cursor movement and editing, making it usable entirely from the keyboard. Query results are fetched in chunks and pagin
Provides a common API layer over interchangeable native database drivers for executing queries and managing connections.
Sqlectron-gui este un manager de baze de date cross-platform și un client SQL. Oferă o interfață grafică pentru organizarea conexiunilor la servere și executarea comenzilor SQL pe diverse sisteme de operare. Instrumentul funcționează ca un mediu de interogare multi-bază de date, permițând utilizatorilor să se conecteze și să interacționeze cu diverse sisteme de baze de date relaționale dintr-o singură interfață. Aplicația acoperă administrarea serverelor de baze de date prin salvarea și organizarea detaliilor de conexiune pentru multiple medii. Include, de asemenea, capabilități pentru gestionarea conexiunilor la baze de date și executarea interogărilor SQL.
Implements a modular driver layer that translates generic queries into specific communication protocols for various database engines.