5 repositorios
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 es un framework del lado del servidor para construir y ejecutar APIs de GraphQL dentro de aplicaciones C#. Proporciona un toolkit integral para la construcción de esquemas, un motor federado para grafos de datos distribuidos y un manejador de suscripciones para gestionar flujos de datos en tiempo real. El proyecto se distingue por un constructor de esquemas flexible que admite tanto definiciones programáticas code-first como enfoques declarativos schema-first utilizando el lenguaje de definición de esquemas estándar. Incluye un motor de federación dedicado para dividir grafos de datos en subgrafos y componerlos en una puerta de enlace unificada, así como una implementación de cargador de datos (data loader) diseñada específicamente para resolver el problema de consultas N+1 mediante procesamiento por lotes y caché. El framework cubre una amplia gama de capacidades operativas, incluyendo la integración de inyección de dependencias para la gestión del ciclo de vida de los servicios, pipelines de middleware para la interceptación de resolución de campos y un pipeline de ejecución optimizado con tipos de valor para reducir las asignaciones de memoria. También proporciona herramientas para el análisis de complejidad de consultas, caché de documentos y control de acceso basado en roles para asegurar los endpoints de la API. La compatibilidad con la compilación de esquemas ahead-of-time permite que el framework se ejecute en entornos que prohíben la generación dinámica de código.
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 es una biblioteca de Ruby para construir APIs de GraphQL con un esquema fuertemente tipado y un motor de ejecución de consultas dedicado. Proporciona un framework integral para mapear objetos de la aplicación a un sistema de tipos formal, permitiendo la obtención estructurada de datos mediante resolvers definidos. El proyecto destaca por sus mecanismos avanzados de rendimiento y entrega, incluyendo un data loader para batching y caché que evita patrones de consulta N+1. Admite la entrega de datos de alto rendimiento mediante streaming de respuestas incremental, respuestas de consulta diferidas y obtención de datos en paralelo usando fibers. Además, proporciona soporte nativo para convenciones de Relay, incluyendo helpers especializados para conexiones e identificación de objetos. La biblioteca cubre una amplia superficie de gestión de API, con control de acceso granular, versionado de esquemas para mantener la compatibilidad hacia atrás y actualizaciones en tiempo real mediante suscripciones. También incluye herramientas de gestión de tráfico para proteger los recursos del servidor, como la limitación de complejidad de consultas y de tasa de peticiones. El desarrollo y la observabilidad están respaldados por herramientas de análisis de AST, trazado de ejecución y utilidades de prueba especializadas para la verificación de carga por lotes.
Provides a DataLoader engine to batch data fetching requests and eliminate N+1 query problems.
Este proyecto es un boilerplate de monorepo full stack y plantilla de API GraphQL en Node.js. Proporciona un proyecto semilla que integra una API GraphQL schema-first, una base de datos PostgreSQL y un frontend de React dentro de un único repositorio para compartir tipos entre el backend y la interfaz de usuario. La arquitectura incluye un wrapper serverless para despliegue en la nube y escalado automático. Implementa una capa de procesamiento por lotes de peticiones para optimizar el rendimiento de la base de datos evitando el problema de consultas N+1. El proyecto cubre la gestión de bases de datos mediante versionado de esquemas basado en migraciones y archivos semilla. También incluye capacidades para la integración de identidad de usuario, abarcando autenticación, autorización y control de acceso basado en permisos.
Implements a request batching layer using DataLoader to eliminate N+1 query problems in GraphQL resolvers.