9 dépôts
Techniques for loading an entity and its associated related records in a single operation to avoid N+1 query problems.
Distinguishing note: Candidates cover DNS or ML prefetching; this is specifically about relational database entity prefetching.
Explore 9 awesome GitHub repositories matching data & databases · Relation Prefetching. Refine with filters or upvote what's useful.
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
Defines and manages relational data models with automatic prefetching and related-object queries.
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.
Models relationships between root and nested tables by specifying custom primary or merge keys.
LoopBack Next est un framework d'API Node.js utilisé pour construire des API REST et multi-protocoles. Il fonctionne comme une implémentation de serveur OpenAPI capable soit de générer des spécifications lisibles par machine à partir du code, soit de produire des contrôleurs et des modèles d'implémentation à partir de spécifications existantes. Le framework se distingue par un conteneur d'injection de dépendances central et une couche d'accès aux données basée sur le pattern repository. Cette architecture découple la logique applicative de la construction des composants et du stockage persistant, permettant un système enfichable où les sources de données et la logique métier sont isolées via un système de connecteurs standardisé. Le projet couvre un large éventail de capacités, incluant le contrôle d'accès basé sur les rôles avec des stratégies d'authentification enfichables et l'orchestration de services REST et SOAP externes. Il fournit également des outils pour la communication en temps réel via des endpoints WebSocket, la validation de schémas JSON, et l'échafaudage automatique de projets via une interface en ligne de commande. Le développement est soutenu par un ensemble d'outils CLI pour amorcer les applications, générer des composants d'API et gérer les dépendances du projet.
Allows defining complex model relationships, including many-to-one associations using foreign key constraints.
Platform est un framework pour construire des applications de back-office et des tableaux de bord administratifs en utilisant Laravel. Il fonctionne comme un framework d'interface utilisateur piloté par schéma et un générateur CRUD qui construit automatiquement des interfaces de gestion de base de données, des formulaires de saisie et des règles de validation à partir de définitions de modèles programmatiques. Le projet se distingue par un kit d'interface utilisateur backend complet qui prend en charge la capture de données avancée, y compris le mappage de coordonnées géographiques, les matrices de données JSON tabulaires et le suivi des métadonnées marketing. Il dispose d'un système robuste de contrôle d'accès basé sur les rôles pour gérer la visibilité des ressources et la protection des routes, parallèlement à une implémentation de recherche plein texte globale qui indexe les données à travers plusieurs modèles. La plateforme couvre un large éventail de capacités, y compris le chargement de données asynchrone, les systèmes de notification multicanaux et une bibliothèque de composants de formulaire spécialisés pour la gestion de texte riche et de fichiers. Elle fournit également des outils pour la visualisation de données via l'agrégation de modèles et la création de graphiques, ainsi que des utilitaires pour le rafraîchissement partiel de page afin de simuler une expérience d'application monopage. Les options d'intégration permettent la connexion de contrôleurs existants et de templates hérités pour faciliter une migration progressive des fonctionnalités vers le framework.
Provides form components that load and select records from database relationships with support for scoping and searching.
paopao-ce est une plateforme communautaire sociale conçue pour publier du contenu et gérer les relations entre utilisateurs. Elle fournit un environnement réseau évolutif qui implémente des modèles sociaux basés à la fois sur l'amitié et le suivi pour réguler l'interaction des utilisateurs et le partage de contenu. La plateforme intègre un portefeuille numérique et une connectivité de passerelle de paiement pour gérer les transactions financières et maintenir les soldes des utilisateurs. Elle utilise une combinaison d'un backend basé sur Go et d'un frontend basé sur JavaScript pour délivrer ses services. Le système inclut des capacités de gestion des identités via vérification SMS et sessions sécurisées basées sur des jetons. Il propose également une recherche de contenu communautaire utilisant l'indexation inversée, la persistance des médias via le stockage d'objets et la génération automatisée de spécifications d'API lisibles par machine. L'observabilité est gérée par la capture de logs système et le profilage de performance pour identifier les goulots d'étranglement de traitement.
Models complex social relationships using relational tables to manage friendships and follower connections.
Twill est une boîte à outils CMS Laravel et un générateur de panneau d'administration conçu pour construire des consoles administratives personnalisées et des systèmes de gestion de contenu. Il sert de framework CMS headless et de boîte à outils pour définir des modèles de contenu et gérer des données structurées via une interface administrative dédiée. Le projet propose un éditeur de blocs visuel qui permet aux éditeurs d'organiser et de configurer des sections de contenu réutilisables via une interface glisser-déposer. Il inclut un gestionnaire d'actifs numériques dédié pour stocker, recadrer et optimiser les images et fichiers sur un stockage local ou cloud, ainsi qu'un gestionnaire de contenu multilingue pour gérer les champs traduits et les permaliens localisés. La plateforme fournit de larges capacités pour la gestion de contenu et de médias, incluant le suivi de version, la planification de publication et l'organisation hiérarchique des pages. Elle couvre des outils administratifs étendus tels que le contrôle d'accès basé sur les rôles, la recherche globale et le scaffolding en ligne de commande pour la génération rapide de modules CRUD et de migrations de base de données. Le système s'intègre aux modèles Laravel en utilisant des traits pour permettre la publication et la gestion des médias.
Provides form components for selecting records from database relationships with custom filtering based on other field selections.
Django Tastypie est un framework pour construire des services web RESTful qui mappent les modèles Django vers des ressources API. Il fonctionne comme un générateur d'API basé sur les modèles, créant automatiquement des endpoints en lecture-écriture pour les modèles de base de données afin de permettre des opérations CRUD standard via HTTP. Le projet sert de sérialiseur de données multi-format et de mapper d'API hypermédia. Il convertit les données de base de données en divers formats de réponse, notamment JSON, XML et YAML, en fonction des requêtes des clients, et transforme les relations de base de données en liens navigables pour la découverte de ressources. La boîte à outils inclut une implémentation de sécurité pour l'authentification des utilisateurs utilisant une poignée de main challenge-réponse pour éviter de transmettre des identifiants en texte clair. Elle fournit également des mécanismes pour mapper des relations de données complexes et gérer la sérialisation des réponses API.
Maps complex database relationships, including foreign keys and many-to-many associations, to a consistent API interface.
Drift is a type-safe SQL persistence library and relational mapper that provides a structured way to map database tables to classes and execute SQL queries with build-time validation. It functions as a type-safe query builder and a wrapper for SQLite and PostgreSQL, eliminating manual result set parsing by binding query outputs to native objects. The project distinguishes itself through a build-time code generation system that produces type-safe APIs and validates raw SQL statements against database versions before execution. It features reactive query streaming, which transforms SQL queries
Retrieves an entity along with its referenced fields using prefetching to avoid inefficient queries.
Ce projet est un kit de développement logiciel (SDK) côté client pour les applications iOS et macOS qui intègre le logiciel mobile avec un backend basé sur le cloud. Il fonctionne comme une interface de backend mobile en tant que service (MBaaS), permettant aux développeurs de gérer l'authentification des utilisateurs, la persistance des données dans le cloud et la synchronisation sans avoir besoin de maintenir une infrastructure côté serveur. Le framework est conçu pour le développement hors ligne, utilisant un datastore local pour mettre en cache l'état de l'application et assurer la fonctionnalité pendant les périodes de déconnexion réseau. Il dispose d'un moteur de synchronisation automatisé qui met en file d'attente les opérations en attente et les exécute en arrière-plan une fois la connectivité rétablie. Le système utilise un modèle de données sans schéma, permettant le stockage de paires clé-valeur arbitraires sous forme d'objets sans nécessiter de schémas de base de données prédéfinis ou de migrations rigides. Au-delà du stockage de base, le SDK prend en charge la modélisation de données relationnelles, permettant la création de liens entre les enregistrements pour maintenir la cohérence entre les entités. Il fournit également des capacités en temps réel via des abonnements pilotés par les événements, qui poussent les changements de données côté serveur directement vers le client. Pour optimiser les performances, la bibliothèque effectue une synchronisation basée sur les deltas, transmettant uniquement les champs d'objets modifiés au serveur pour réduire la consommation de bande passante.
Connects objects by storing references to other records to ensure data consistency and integrity across related entities.