Resource Consumption
The resource metrics endpoint provides visibility into CPU, memory, and I/O consumption across query executions, enabling capacity planning and cost allocation.
Endpoint
GET /v1/analytics/resourcescurl "http://query-engine:8080/v1/analytics/resources?days=7" \
-H "Authorization: Bearer $JWT_TOKEN"{
"totalCpuTimeMs": 45000000,
"totalMemoryPeakBytes": 68719476736,
"totalBytesScanned": 10995116277760,
"totalBytesOutput": 1073741824,
"avgCpuTimePerQuery": 3600,
"avgMemoryPerQuery": 134217728,
"avgBytesScannedPerQuery": 879609302,
"peakConcurrentQueries": 45,
"resourceByEngine": {
"TRINO": {
"cpuTimeMs": 35000000,
"bytesScanned": 8796093022208,
"queryCount": 8200
},
"CLICKHOUSE": {
"cpuTimeMs": 8000000,
"bytesScanned": 2199023255552,
"queryCount": 3800
},
"SPARK_ASYNC": {
"cpuTimeMs": 2000000,
"bytesScanned": 10995116277760,
"queryCount": 450
}
},
"topResourceConsumers": [
{
"userId": "6ba7b810-9dad-11d1-80b4-00c04fd430c8",
"queryCount": 450,
"totalCpuTimeMs": 8500000,
"totalBytesScanned": 2199023255552
}
]
}Per-Query Statistics
Each QueryResponse includes detailed per-query resource statistics in the statistics field, as provided by the execution engine (primarily Trino):
| Metric | Description |
|---|---|
cpuTimeMs | Aggregate CPU time across all workers |
wallTimeMs | Wall-clock execution time |
peakMemoryBytes | Maximum memory used at any point |
inputRows / inputBytes | Data read from source tables |
outputRows / outputBytes | Data in the final result |
completedSplits | Number of Trino splits (parallel units) processed |