Live query progress
While a metric query runs, the chart’s loading indicator shows live progress streamed from the database: how much data has been scanned so far and, when an estimate is available, how far along the query is (for example, “1.2 GB scanned · 34%”). Progress appears on time series charts, tables, pie charts, and bar gauges. Fast queries may complete before any progress is worth showing; in that case you just see the result.Cancelling a query
If a query has been running for more than a second, a Cancel control appears under the progress indicator. Cancelling aborts the query in the browser and also stops the query inside the database, so it stops consuming resources immediately. A cancelled chart shows a Run again control to re-run the query. Queries are also cancelled automatically when you navigate away or scroll a chart out of view, so off-screen charts never keep expensive queries running.Query statistics
After a query completes, charts show a small summary in their header, for example “1.2 GB · 3.4 s”. Hovering over it shows the full detail: rows and bytes scanned, wall-clock duration, and how many database queries were issued to serve the chart. The same statistics are returned on the API responses as an optionalqueryStats field:
bytesRead(and the “scanned” figure in charts) is the uncompressed, in-memory size of the data the query processed, matching ClickHouse’s own progress reporting. The actual disk and network I/O is typically 10-20x smaller thanks to compression.cachedRowsReadandcachedBytesReadreport the scan cost that was originally paid to compute any parts of the response served from Metoro’s query response cache. They are separate fromrowsRead/bytesRead, which only count work the database performed for this request; the chart badge shows the combined figure with the cached share broken out on hover. The fields are omitted when nothing was served from the cache, and results cached before this feature existed report 0.subQueriescounts every database query issued for the request; a single chart typically issues at least two (a metric type lookup plus the main query), and more when results are split across multiple metrics.clickhouseElapsedMsis the server-side time summed across all sub-queries, so it can exceeddurationMswhen sub-queries run concurrently.requestIdcan be used to find every sub-query of a request in ClickHouse’ssystem.query_log(it is set as thelog_commentand used as thequery_idprefix).progressAvailableis false when the deployment connects to ClickHouse over HTTP, which cannot stream progress; queries still work, but scan counters are not reported.
