5 dépôts
Tools that parse, validate, and extract metadata from database queries to ensure syntax correctness and operational efficiency.
Distinguishing note: Focuses on static analysis and metadata extraction of SQL, distinct from runtime execution or database management.
Explore 5 awesome GitHub repositories matching data & databases · Query Analyzers. Refine with filters or upvote what's useful.
TypeORM is an object-relational mapper for TypeScript and JavaScript that bridges the gap between object-oriented application code and relational database tables. It provides a comprehensive data persistence layer that allows developers to define database entities using class decorators or configuration objects, enabling seamless interaction with data through object-oriented patterns. The project distinguishes itself through a flexible architecture that supports both the data mapper and repository patterns, alongside a fluent query builder that translates high-level method calls into platform
TypeORM inspects database execution plans to identify missing indexes and evaluate the efficiency of query execution strategies across various supported database engines.
Druid is a database connection management and monitoring framework designed to maintain persistent, high-performance links between applications and relational databases. It functions as a resource manager that automates the lifecycle of connection pools, reducing the overhead associated with repeatedly opening and closing network connections. The project distinguishes itself through an integrated query analysis engine that decomposes database statements into structured components. This capability enables real-time security auditing, syntax validation, and metadata extraction, allowing for the
The project examines database queries to extract metadata, verify syntax, and perform security audits, ensuring that all interactions with the database remain safe and efficient.
ANTLR est un générateur de code basé sur la grammaire et un générateur d'analyseur multi-langage utilisé pour concevoir et implémenter des langages personnalisés. Il fonctionne comme une boîte à outils pour transformer des définitions de langage formel en code source exécutable pour traiter du texte structuré ou des fichiers binaires, tout en fournissant un framework pour construire et parcourir automatiquement des arbres d'analyse hiérarchiques. Le projet se distingue par sa capacité à générer des lexers et des analyseurs dans divers langages de programmation cibles à partir d'une seule définition de grammaire partagée. Il prend en charge les grammaires contenant une récursion à gauche directe et utilise une prédiction adaptative pour optimiser la vitesse d'analyse tout en maintenant la flexibilité. Le système couvre un large éventail de capacités, notamment l'analyse lexicale, la vérification sémantique via l'évaluation de prédicats et la gestion de données hiérarchiques. Il fournit des outils pour l'analyse des arbres d'analyse via des requêtes basées sur le chemin et des modèles de parcours visiteur-auditeur pour découpler la logique de grammaire des actions de l'application. Des utilitaires en ligne de commande sont disponibles pour tester les définitions de grammaire et déboguer la logique, et l'outil peut être exécuté dans des conteneurs Docker pour éviter les installations locales.
Validates input against custom logic and rules during the parsing process to identify non-syntactic errors.
This repository contains the official technical specification for GraphQL. It serves as the formal standard defining the query language, the execution engine, and the schema definition rules required to maintain consistency across different API implementations. The specification establishes a language-agnostic standard for query syntax and semantics, alongside a formal protocol for introspection. It provides the documented algorithms and logic requirements necessary for implementing a consistent server, ensuring that metadata about types and fields can be discovered by automated tools. The p
Specifies the system for analyzing queries against the type system to identify mismatches before execution.
sqlglot is a SQL parser and transpiler that represents queries as abstract syntax trees to enable structural analysis, modification, and semantic transformation. It functions as a dialect translator and query optimizer, converting SQL code between different database engines and simplifying syntax trees through rule-based normalization. The project provides a framework for defining custom SQL dialects by overriding tokenizers, parsers, and generators. It includes a lineage analyzer to track data flow from source tables through complex queries to identify the origin of specific columns. Additi
Resolves semantic context and relationships, such as references within common table expressions.