25 个仓库
Processes SQL queries into abstract syntax trees to enable programmatic analysis and rewriting of database commands.
Distinct from SQL Statement Parsing: None of the candidates cover the specific concept of AST generation for routing and execution logic.
Explore 25 awesome GitHub repositories matching data & databases · SQL Abstract Syntax Tree Parsing. Refine with filters or upvote what's useful.
ShardingSphere is a distributed SQL database middleware that provides sharding, read-write splitting, and distributed transaction management for relational databases. It functions as a layer that intercepts SQL queries to distribute data across multiple physical database instances for horizontal scaling. The project is distinguished by its ability to operate as either a standalone transparent database proxy or via direct integration as a JDBC driver. It features a SQL dialect translator that parses queries into abstract syntax trees to convert syntax between different database engines, enabli
Analyzes SQL statements into structured abstract syntax trees to implement custom routing and execution logic.
sqlc is a SQL compiler and code generator that creates type-safe database client code from raw SQL queries. It transforms SQL statements into typed definitions and functions, eliminating the need for manual row mapping between database results and application structures. The tool ensures compile-time safety by validating SQL queries against the database schema before the application is run. This workflow integrates the database schema directly into the application code, deriving types from the underlying SQL definitions to prevent runtime errors. The system utilizes AST-based query analysis
Parses raw SQL queries into abstract syntax trees for structural analysis and type inference.
SQLFluff is a multi-dialect SQL linter, formatter, and style guide enforcer. It functions as a parser and analyzer that converts SQL scripts into structured trees to validate syntax, identify logical components, and enforce consistent capitalization, aliasing, and layout conventions across various database dialects. The system is specifically designed to handle templated SQL, providing the ability to analyze, parse, and lint files containing macros or placeholders. It uses dummy-parameter rendering and source mapping to validate the style and correctness of dynamic code before it is rendered
Converts SQL code into abstract syntax trees to enable programmatic analysis and rendering in various formats.
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
Parses raw SQL strings into structured abstract syntax trees that capture the semantics of the statement.
Yearning is a MySQL SQL audit platform and database change management system. It provides a governance framework for reviewing, approving, and auditing SQL statements executed against MySQL databases. The platform features an AI-powered SQL optimizer that suggests performance improvements and converts natural language requests into executable SQL code. It manages database changes through an approval-based workflow engine that includes automated rollback generation and rule-based syntax validation. The system covers role-based access control, security compliance with multi-factor authenticati
Evaluates submitted SQL against predefined security and performance constraints using automated checkers.
Soar is a suite of specialized tools designed for analyzing MySQL performance, advising on indexing, and optimizing SQL syntax. It functions as a performance analyzer, index advisor, and query optimizer to identify bottlenecks and suggest structural improvements for faster execution. The project distinguishes itself through a system for rewriting SQL statements into optimized equivalent versions using custom heuristic rules and patterns. It also features a dedicated index advisor that evaluates query patterns and database metadata to recommend the creation of new indexes. Its broader capabil
Translates various database dialects into abstract syntax trees for structural analysis and rewriting.
ToyDB is a distributed SQL database that provides a system for storing and querying data across multiple nodes. It focuses on maintaining strong consistency and fault tolerance through the implementation of a distributed consensus algorithm. The project distinguishes itself by supporting historical data versioning, enabling time-travel queries to retrieve the state of the database from a specific point in the past. It utilizes multi-version concurrency control to manage ACID transactions and ensure data integrity during concurrent operations. The system covers relational data modeling with t
Processes SQL queries into abstract syntax trees to enable programmatic analysis and execution.
Standard README 是一个 Markdown 文档标准和规范,旨在组织项目元数据和说明。它作为一个开源治理框架,建立了一套正式的规则和模板,以确保项目信息在不同仓库中保持可预测性和一致性。 该项目提供了一个文档合规性验证器,用于检查 README 是否符合这些预定义的格式标准。它包括用于生成 README 模板以产生基准文档文件的工具,以及通过使用视觉徽章来标记规范合规性的系统。
Verifies that project README files follow a predefined specification to ensure high documentation quality.
JSqlParser 是一个 Java SQL 查询解析库,将原始 SQL 字符串转换为强类型 Java 对象的结构化层级。它通过将数据库查询表示为对象树,提供了程序化分析和操作数据库查询的方法。 该库支持解析现有 SQL 文本以及通过流畅 API 程序化生成新语句。它包括转换查询树并将结构化对象模型序列化回格式化 SQL 文本的机制。 其他功能包括数据库模式分析(例如提取表名以映射数据依赖关系)和 SQL 语法验证。该解析器可配置以处理不同的语法方言,并包括容错恢复功能,以便在遇到无效标记后继续处理脚本。
Provides mechanisms to check database queries for correctness and handle syntax errors during the processing of SQL scripts.
GreptimeDB is a distributed, open-source time-series database built for unified observability. It stores and queries metrics, logs, and traces together in a single columnar engine, supporting both SQL and PromQL for analysis. The database is designed as a Kubernetes-native operator with a decoupled compute and storage architecture, enabling horizontal scaling and multi-region deployment. What distinguishes GreptimeDB is its role as a multi-protocol ingestion gateway, accepting data through OpenTelemetry, Prometheus Remote Write, InfluxDB, Loki, Elasticsearch, Kafka, and MQTT protocols without
Provides an endpoint that parses SQL statements into abstract syntax trees returned as JSON.
Cortex is an open-source, horizontally scalable metrics platform that ingests, stores, and queries Prometheus-compatible time-series data with multi-tenant isolation. It accepts metrics via Prometheus remote write and OpenTelemetry, executes PromQL queries against both recent and historical data, and provides a Prometheus-compatible alerting and recording rule engine with an integrated Alertmanager. The system is built as a set of independently scalable microservices that use hash-ring-based sharding, gossip-based cluster membership, and tenant-aware object storage to distribute workloads acro
Validates PromQL and Alertmanager configuration syntax before applying changes.
SQLAdvisor is a database performance tuner and index recommendation tool designed to reduce query latency. It functions as a query optimizer that analyzes SQL execution patterns to identify missing indexes and provide actionable performance optimization advice. The system focuses on automated index management and database query tuning. It identifies the root causes of slow database responses and recommends the most effective indexes to improve data retrieval speeds. Its capabilities include analyzing SQL parse trees and join patterns, using cost-model and heuristic-based selections to priori
Converts raw SQL queries into abstract syntax trees to identify filter predicates and join columns for analysis.
ptpython is an enhanced interactive Python REPL and asynchronous console built on the prompt-toolkit library. It provides a customizable command-line interface for executing Python code with support for multiline editing, autocompletion, and syntax highlighting. The environment supports top-level await statements and asynchronous execution via an integrated event loop. It allows for extensive interface customization, including configurable key bindings for Vi or Emacs navigation and personalized color schemes. The shell includes capabilities for real-time syntax validation and the execution
Implements real-time syntax validation that highlights errors with cursor warnings before code is executed.
Pest 是一个 Rust 解析库和自动解析器生成器,可将形式语法定义转换为功能性解析器。它专注于解析表达式语法(PEG)以识别和结构化复杂的文本模式,提供了一个用于上下文无关语法解析的系统。 该库实现了零拷贝标记化和静态语法编译,以减少运行时开销。它支持 no-std 运行时兼容性,允许解析器在没有标准库的嵌入式或裸机环境中编译。 该项目涵盖了一系列解析功能,包括嵌套标记对的提取和自动语法验证。它用于实现领域特定语言(DSL)、自定义语言解析和数学表达式求值。它还提供自动错误报告以识别意外标记或缺失输入。
Checks input text against a formal grammar to identify syntax violations and report unexpected tokens.
This project is a Language Server Protocol implementation for PostgreSQL that provides autocompletion, syntax diagnostics, and type checking for SQL and PL/pgSQL. It functions as a database schema validator and a static analysis engine designed to detect security vulnerabilities, performance bottlenecks, and dangerous migration patterns in database scripts. The server differentiates itself by using live database connections to provide schema-aware intelligence, allowing it to verify that tables, columns, and data types actually exist. It performs static analysis on procedural functions to det
Performs type checking through explain-based error insights to lint database schemas and migrations.
Calcite 是一个用于解析、优化并将 SQL 查询转换为关系代数以在不同数据源上执行的框架。它既是一个跨源查询引擎,也是一个 SQL 解析库和关系代数优化器。 该项目提供了一个基于成本的优化引擎,利用可插拔规则将逻辑查询计划转换为高效的物理执行计划。它利用转换适配器将标准 SQL 请求转换为外部数据库和消息系统的原生格式,从而实现异构存储系统之间的数据联邦。 该系统涵盖了完整的查询生命周期,包括 SQL 解析和模式验证、将表达式转换为代数运算符,以及选择高效的执行计划。它还包含一个用于执行查询和管理数据源连接的命令行界面。
Converts SQL strings into abstract syntax trees (ASTs) to facilitate programmatic analysis and optimization.
Blitzar 是一个可验证的 SQL 证明引擎和加密库,专为可验证的 SQL 计算而设计。它支持在链下执行数据库查询,同时生成零知识证明,以证明结果的正确性,从而实现链上验证。 该项目以其 GPU 加速的证明加速器脱颖而出,该加速器将繁重的加密工作负载卸载到图形处理器,减少了简洁证明生成所需的时间。它为 C++ 和 Rust 应用提供了高性能加密原语,专注于椭圆曲线运算和多标量乘法。 该系统涵盖了广泛的数据管理和安全面,包括将区块链索引与链下数据集结合到防篡改关系表中的无信任数据集成。它利用 BFT 共识和阈值签名来维护状态完整性,以及用于基于法定人数的数据同步和通过智能合约回调进行验证结果交付的机制。 该代码库提供了 C++ 和 Rust 的原生绑定,以公开其加密工具集和证明计算库。
Processes SQL syntax into abstract syntax trees to prepare queries for zero-knowledge proof generation.
Shellharden 是一个 Shell 脚本加固工具和 linter,旨在提高 Bash 脚本的安全性和可靠性。它作为一个自动化工具,重写脚本以遵循行业标准的引用和安全实践。 该项目提供了一个优化器和标准化工具,用更安全的函数等效项替换不安全的模式和别名。它包含一个语法高亮器,使用视觉标记和颜色来指示漏洞以及需要进行引用修正的区域。 该工具涵盖了广泛的功能,包括自动安全修复、漏洞检测和脚本错误检测。这些功能通过自动重写和结构化语法验证确保脚本的一致性。
Identifies and visualizes structural errors and vulnerabilities to ensure scripts run predictably.
该仓库是 .NET 生态系统的技术文档源。它由一系列用 Markdown 编写的概念指南和技术参考组成,作为公共文档门户的静态站点内容源。 该项目利用基于 Git 的内容管理系统,通过 Pull Request 和自动化构建管道来处理技术写作。它通过一种专门的基础设施脱颖而出,该基础设施将来自多个仓库和分支的内容与示例聚合到一个统一的输出中。 该系统涵盖了广泛的文档生命周期能力,包括自动化发布、基于元数据的组织,以及用于移除过时软件内容的版本控制。它集成了用于 Markdown 链接和元数据的验证工具,以及用于基于许可证的依赖扫描和密钥泄露检测的治理工具。 管理自动化通过用于 Issue 标签、Pull Request 协调以及基于路径的 URL 重定向以管理内容迁移的工具进行处理。
Checks for broken links and missing metadata within documentation files to ensure a high-quality user experience.
该项目是一个开发人员工具,作为人工智能驱动的数据库查询管理助手。它提供了一个交互式界面,用于在自然语言和结构化数据库代码之间进行转换,简化了编写、调试和维护复杂查询的过程。 该工具通过结合模式感知上下文注入脱颖而出,这使其能够将生成的查询与特定的表定义和关系元数据对齐。通过维护有状态的对话历史并利用大语言模型提示,它使用户能够迭代地优化查询,并接收考虑到其数据库环境特定逻辑和结构的解释。 除了核心翻译外,该工具还支持分析现有代码以识别语法错误,并提供复杂查询逻辑的通俗易懂的分解。它还包括用于格式化数据库代码和管理本地翻译日志历史记录的功能,以促进过去工作的重用。
Processes SQL queries into abstract syntax trees to enable programmatic analysis and rewriting of database commands.