5 repository-uri
Engines that group data fetching requests by key into single batch calls to eliminate N+1 query problems.
Distinct from Query Batching: Distinct from Query Batching: specifically designed for GraphQL resolvers to batch and cache data fetches by key, not general computational query batching.
Explore 5 awesome GitHub repositories matching data & databases · DataLoader Batching Engines. Refine with filters or upvote what's useful.
GraphQL.NET este un framework server-side pentru construirea și executarea API-urilor GraphQL în aplicații C#. Acesta oferă un toolkit cuprinzător pentru construirea schemelor, un motor federat pentru grafuri de date distribuite și un handler de subscripții pentru gestionarea fluxurilor de date în timp real. Proiectul se distinge printr-un constructor de scheme flexibil care suportă atât definiții programatice code-first, cât și abordări declarative schema-first folosind limbajul standard de definire a schemelor. Include un motor de federare dedicat pentru a diviza grafurile de date în subgrafuri și a le compune într-un gateway unificat, precum și o implementare de data loader concepută special pentru a rezolva problema interogărilor N+1 prin batching și caching. Framework-ul acoperă o gamă largă de capabilități operaționale, inclusiv integrarea dependency injection pentru gestionarea duratei de viață a serviciilor, pipeline-uri middleware pentru interceptarea rezoluției câmpurilor și un pipeline de execuție optimizat cu tipuri de valoare pentru a reduce alocările de memorie. De asemenea, oferă instrumente pentru analiza complexității interogărilor, caching-ul documentelor și controlul accesului bazat pe roluri pentru securizarea endpoint-urilor API. Suportul pentru compilarea schemelor ahead-of-time permite framework-ului să ruleze în medii care interzic generarea dinamică de cod.
Implements the DataLoader pattern to batch requests and cache results, eliminating N+1 query problems.
HotChocolate is a GraphQL server implementation for .NET that handles queries, mutations, and subscriptions over HTTP. It provides code-first schema generation directly from C# classes and attributes, keeping the schema and business logic in sync without manual type definitions. The project also includes a GraphQL gateway that composes multiple GraphQL and REST endpoints into a single unified schema, along with a GraphQL IDE for exploring, testing, and debugging GraphQL APIs interactively. The project distinguishes itself through its comprehensive tooling ecosystem, which includes a GraphQL c
Implements DataLoader-based batching to eliminate N+1 query problems in GraphQL resolvers.
GraphQL Platform is a comprehensive GraphQL ecosystem for .NET that provides a spec-compliant server framework for building APIs and gateways, along with a typed C# client for consuming GraphQL services. At its core, it translates C# classes and methods into a GraphQL schema using code-first or fluent descriptor approaches, enabling developers to define their API structure directly from their existing .NET code. The platform distinguishes itself through several integrated capabilities that address common GraphQL production concerns. It includes a DataLoader batching and caching engine that gr
Ships a DataLoader batching engine that groups data fetching requests by key to solve the N+1 problem in resolvers.
GraphQL-Ruby este o bibliotecă Ruby pentru construirea de API-uri GraphQL cu o schemă puternic tipizată și un motor dedicat de execuție a interogărilor. Aceasta oferă un framework cuprinzător pentru maparea obiectelor aplicației la un sistem formal de tipuri, permițând preluarea structurată a datelor prin resolver-e definite. Proiectul se distinge prin mecanisme avansate de performanță și livrare, inclusiv un data loader pentru batching și caching, menit să prevină tiparele de interogare N+1. Suportă livrarea de date de înaltă performanță prin streaming incremental de răspunsuri, răspunsuri amânate la interogări și preluarea paralelă a datelor folosind fibers. În plus, oferă suport nativ pentru convențiile Relay, inclusiv helper-e specializate pentru conexiuni și identificarea obiectelor. Biblioteca acoperă o suprafață largă de gestionare a API-urilor, incluzând controlul accesului granular, versionarea schemei pentru a menține compatibilitatea backward și actualizări în timp real prin subscripții. Include, de asemenea, instrumente de gestionare a traficului pentru a proteja resursele serverului, cum ar fi limitarea complexității interogărilor și limitarea ratei de cereri. Dezvoltarea și observabilitatea sunt susținute prin instrumente de analiză AST, tracing de execuție și utilitare de testare specializate pentru verificarea încărcării în loturi (batch loading).
Provides a DataLoader engine to batch data fetching requests and eliminate N+1 query problems.
Acest proiect este un boilerplate de monorepo full stack și șablon de API GraphQL Node.js. Oferă un proiect de bază care integrează un API GraphQL schema-first, o bază de date PostgreSQL și un frontend React într-un singur depozit pentru a partaja tipurile între backend și interfața utilizator. Arhitectura include un wrapper serverless pentru implementarea în cloud și scalare automată. Implementează un strat de batching al cererilor pentru a optimiza performanța bazei de date prin prevenirea problemei interogărilor N+1. Proiectul acoperă gestionarea bazei de date prin versionarea schemei bazată pe migrații și fișiere seed. Include, de asemenea, capabilități pentru integrarea identității utilizatorului, cuprinzând autentificarea, autorizarea și controlul accesului bazat pe permisiuni.
Implements a request batching layer using DataLoader to eliminate N+1 query problems in GraphQL resolvers.