🚀 Proposal: Add Pipeline (|) Query Syntax to UQL for "Mirandor Core". #2
dostiharise
started this conversation in
Ideas
Replies: 1 comment
-
|
Reference Implementations:
|
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
🚀 Proposal: Add Pipeline (|) Query Syntax to UQL for "Mirandor Core".
Summary
UQL provides unified querying across Metrics, Logs, and Traces, but it lacks a pipeline-style syntax, now the dominant standard across modern observability and analytics systems.
Introducing a pipe-driven DSL improves composability, readability, and aligns Mirador-core with leading systems such as Lightstep UQL, Elasticsearch ES|QL, Azure Log Analytics (KQL), OpenSearch PPL, and BigQuery’s SQL-style staged operators.
🌍 Industry Precedents (Expanded)
Lightstep UQL
Elasticsearch ES|QL
|to chain analytics steps.Azure Log Analytics (KQL)
|. Data flows from one operator to the next.”OpenSearch PPL (Piped Processing Language)
Log analytics engine with first-class pipeline syntax.
Syntax example:
Defines a clear sequence of pipeline operators similar to Splunk and KQL.
BigQuery SQL (Staged Transformations)
WITH→SELECT→ nested transforms).Together, these establish a unified direction: pipeline-based transformations are the industry default for massive-scale log, metric, trace, and analytic systems.
💡 Motivation
Pipeline syntax matches the natural mental model for telemetry workflows:
fetch → transform → filter → aggregate → correlate.
It reduces cognitive load, improves step-by-step reasoning, and creates a foundation for future operators (AI, anomaly detection, join heuristics).
📈 Benefits at Large Scale
1. Streaming execution
Stages allow streaming instead of building huge intermediate tables → far lower RAM.
2. Pushdown and pruning
Structured pipelines enable the query planner to push filters earlier and drop unused fields.
3. Predictable CPU per operator
Each stage is a well-defined operator optimized in isolation.
4. Horizontal parallelism
Clear stage boundaries allow sharding log/metric/trace operations across cores or nodes.
5. Faster interactive dashboards
Upstream filtering and projection shrink data early → lower latency.
6. Efficient cross-domain correlation
Pipeline-model enables reorganizing joins between metrics/logs/traces to minimize data movement.
7. Extensibility
Add new operators (
predict,trace_align,vector_enrich) without grammar breakage.8. Proven at hyperscale
KQL, ES|QL, UQL, PPL, Splunk SPL, and BigQuery-style stage flows all rely on pipeline semantics for scale.
🧱 Proposed Pipeline Grammar
Examples
Metrics
Logs
Cross-domain correlation
🧭 Backward Compatibility
🛠 Implementation Notes
✅ Request
Please consider implementing a pipeline-style DSL for UQL. This aligns Mirador-core with the best-in-class observability ecosystems (UQL, ES|QL, KQL, PPL, BigQuery) and unlocks high-scale, intuitive, modular query authoring.
Happy to assist with grammar design or reference operator mappings.
Beta Was this translation helpful? Give feedback.
All reactions