4 Repos
Techniques for optimizing how related data is retrieved from a database to minimize round-trips.
Distinct from Data Fetching Optimizers: Distinct from web-development fetchers; focuses specifically on ORM-level entity graphs and fetch profiles within a database context.
Explore 4 awesome GitHub repositories matching data & databases · Data Fetching Optimizations. Refine with filters or upvote what's useful.
Hibernate ORM ist ein Java-Object-Relational-Mapper und eine vollständige Implementierung der Jakarta Persistence API. Es dient als SQL-Datenbank-Abstraktionsschicht, die Java-Objektmodelle in relationale Datenbankschemata übersetzt, um Datenpersistenz und Lebenszyklen zu verwalten. Das Framework zeichnet sich durch ein Multi-Tenant-Datenisolations-Framework zur Trennung von Kundendaten innerhalb einer einzigen Datenbankinstanz aus. Es verfügt zudem über einen Datenbankschema-Generator, der automatisch relationale Strukturen basierend auf Entity-Mappings erstellt und aktualisiert. Das System deckt breite Funktionsbereiche ab, darunter Transaktionsmanagement, Concurrency-Locking-Kontrolle und temporale Datenverfolgung für Audit-Logging. Es bietet Tools zur Optimierung des Datenabrufs durch Entity-Graph-Strategien und unterstützt fortgeschrittene Datentypen wie Vektordaten und nationalisierte Zeichen. Das Projekt enthält eine umfassende Suite von Test-Utilities für die Persistenzschicht, einschließlich Datenbank-Dialekt-Filterung und Compliance-Tests für Spezifikationen.
Implements techniques for optimizing how related entities are retrieved to minimize database round-trips.
GraphQL.NET ist ein serverseitiges Framework für den Aufbau und die Ausführung von GraphQL-APIs innerhalb von C#-Anwendungen. Es bietet ein umfassendes Toolkit für den Schema-Aufbau, eine föderierte Engine für verteilte Datengraphen und einen Subscription-Handler für die Verwaltung von Echtzeit-Datenströmen. Das Projekt zeichnet sich durch einen flexiblen Schema-Builder aus, der sowohl programmatische Code-First-Definitionen als auch deklarative Schema-First-Ansätze unter Verwendung der Standard-Schema-Definitionssprache unterstützt. Es enthält eine dedizierte Föderations-Engine, um Datengraphen in Subgraphen aufzuteilen und zu einem einheitlichen Gateway zusammenzuführen, sowie eine Data-Loader-Implementierung, die speziell darauf ausgelegt ist, das N+1-Abfrageproblem durch Batching und Caching zu lösen. Das Framework deckt ein breites Spektrum an operativen Funktionen ab, einschließlich Dependency-Injection-Integration für das Service-Lifetime-Management, Middleware-Pipelines für die Interzeption von Feldauflösungen und eine Ausführungspipeline, die mit Werttypen optimiert wurde, um Speicherallokationen zu reduzieren. Zudem bietet es Tools für die Analyse der Abfragekomplexität, Dokument-Caching und rollenbasierte Zugriffskontrolle zur Absicherung von API-Endpunkten. Die Unterstützung für Ahead-of-Time-Schema-Kompilierung ermöglicht es dem Framework, in Umgebungen ausgeführt zu werden, die dynamische Code-Generierung untersagen.
Optimizes data retrieval by batching multiple requests into single calls to minimize database round-trips.
graphql-go ist eine Server-Bibliothek für die Implementierung von GraphQL-Servern in Go. Sie bietet die Kerninfrastruktur für Schema-Parsing, Resolver-Mapping und Query-Ausführung. Die Bibliothek enthält eine Subscription-Engine, die Echtzeit-Datenstreaming an Clients unter Verwendung von WebSocket-Transport ermöglicht. Sie verfügt zudem über einen Execution-Tracer zur Überwachung und Profilierung der Query-Leistung durch Telemetrie-Tools. Das System verwaltet Ressourcenverbrauch und Stabilität durch einen Query-Optimizer, der Tiefenbeschränkungen durchsetzt und die Resolver-Nebenläufigkeit steuert. Es unterstützt die Optimierung des Datenabrufs durch Prefetching auf Feldebene, um repetitive Datenbankanfragen zu reduzieren, und nutzt einen Panic-to-Error-Transformationsmechanismus, um die Serverstabilität zu wahren.
Analyzes child fields and arguments to prefetch data and eliminate repetitive database requests.
graphql-go ist eine schema-first GraphQL-Bibliothek und Server-Implementierung für Go. Sie bietet eine Query-Ausführungs-Engine und einen Schema-Parser, der Schema-Definitions-Strings in ausführbare Strukturen konvertiert und Resolver-Signaturen validiert. Die Bibliothek enthält zudem eine Streaming-Implementierung für Echtzeit-GraphQL-Subscriptions unter Verwendung von Channels innerhalb von Resolvern. Das Projekt zeichnet sich durch parallele Resolver-Ausführung zur Reduzierung der Anfragelatenz und die Verwendung von Buffer-Pool-Speichermanagement zur Senkung des Garbage-Collection-Overheads aus. Es ermöglicht die Erstellung klonbarer Schema-Instanzen aus einem geteilten Syntaxbaum, um eindeutige Resolver-Konfigurationen oder Overrides anzuwenden. Die Bibliothek deckt breite Funktionsbereiche ab, einschließlich Schema-Management mit benutzerdefinierten Skalar-Definitionen und Metadaten-Export sowie Sicherheit durch Query-Tiefen- und Komplexitätsbegrenzungen. Sie bietet zudem Tools für effizienten Datenabruf durch Selection-Set-Inspektion, um N+1-Abfragen zu verhindern, sowie Observability durch Execution-Tracing und Resolver-Panic-Handling.
Implements prefetching and batching strategies by inspecting requested fields to minimize database round-trips.