The canvas isn't a black box
When you build a workflow in DataQloo's Visual Designer, you're not configuring an opaque pipeline — you're building a query, one node at a time. An Input node picks the source table. A Filter node adds a WHERE condition. A Summarize node adds a GROUP BY and an aggregate. A Sort node adds an ORDER BY. The compiler walks the graph and assembles these into a single SQL statement, which you can read directly in the SQL tab of the results panel.
Why parameterization matters
Values from a Filter node — the West in Region = West, for example — aren't concatenated directly into the query string. They're passed as query parameters, the same way you'd write a safe, injection-resistant query by hand. This isn't a nice-to-have; it's the only way the compiler is written. There's no "fast path" that skips it.
A worked example
Suppose you want total revenue by region, for accounts marked active. On the canvas, that's an Input node (your accounts table), a Filter node (Status = active), a Summarize node (SUM(Revenue) grouped by Region), and a Browse node to see the result. The compiler turns that into roughly:
SELECT region, SUM(revenue) AS revenue
FROM accounts
WHERE status = $1
GROUP BY regionwith active passed as $1. Nothing about that query is hidden from you — it's the same thing you'd see if you'd written it by hand.
Where this breaks down today
The compiler currently processes one node of each type meaningfully per workflow — it isn't yet walking arbitrary graph edges to support things like chained filters or multi-table joins. If your workflow needs more than one Filter node's worth of logic, that's a real limitation today, not a hidden one. It's tracked on the feature roadmap alongside the Join and Union nodes that would make multi-source workflows possible.
Why this matters
A visual tool that hides its generated query is asking you to trust it blindly. DataQloo's SQL tab exists so you never have to.
Related reading
Building a Filtered Revenue Report Without Writing SQL
A walkthrough of building a real workflow — connect, filter, summarize, sort — on the canvas, and what the compiled SQL looks like underneath.
PostgreSQL vs. MySQL for Analytical Workflows
Both are solid relational databases. Here's how they actually differ for the kind of filtering and aggregation work a visual workflow tool does.
PostgreSQL Data Types, and How DataQloo Infers Them
A column's declared PostgreSQL type is only half the story. Here's how DataQloo's Schema tab infers the more useful, semantic type underneath.
Get new posts by email
Engineering notes and product updates from the DataQloo team, occasionally.