How Semantic SQL Works
Blog post from Cube
Artyom's recent post delves into the importance of SQL as the communication protocol for a standalone semantic layer, addressing the challenge of SQL's bottom-up evaluation in contrast to the top-down context needed for proper aggregation in a semantic layer. To tackle this, a term rewrite system based on E-Graph theory was developed, which allows for the resolution of measures at the correct aggregation level regardless of query structure. Historically, semantic layers, introduced by tools like Business Objects and adopted by many BI tools, have served to standardize metric definitions, ensuring consistent data interpretation. The resurgence of this need is driven by AI agents that generate SQL queries, often without the ability to discern incorrect results due to the lack of contextual understanding. Semantic SQL, therefore, becomes crucial in providing AI agents with a governed set of metrics and dimensions, moving beyond simplistic text descriptions or flat table interfaces that lack structural guardrails. E-Graphs allow for parallel application of rewrite rules, maintaining multiple expression forms and enabling optimal query plans by resolving cross-cutting interference issues. The future of Semantic SQL is anticipated to become a standard, accommodating more complex analytical workloads through SQL extensions, developed in collaboration with the Open Semantic Interchange working group.