Query Patterns and Best Practices
4.1 Real-Time Snapshot (Last 5 Minutes)
Section titled “4.1 Real-Time Snapshot (Last 5 Minutes)”SELECT REASONER_NAME, MEMORY_UTILIZATION, TIMESTAMPFROM relationalai.observability_preview.logic_reasoner__memory_utilizationWHERE timestamp >= DATEADD(minute, -5, CURRENT_TIMESTAMP())ORDER BY timestamp DESC;4.2 Hourly Aggregation (Last 24 Hours)
Section titled “4.2 Hourly Aggregation (Last 24 Hours)”SELECT REASONER_NAME, DATE_TRUNC('hour', TIMESTAMP) AS hour, AVG(CPU_UTILIZATION) AS avg_cpu, MAX(CPU_UTILIZATION) AS max_cpuFROM relationalai.observability_preview.logic_reasoner__cpu_utilizationWHERE timestamp >= DATEADD(hour, -24, CURRENT_TIMESTAMP())GROUP BY REASONER_NAME, hourORDER BY hour DESC;4.3 Daily Trend Analysis (Last 7 Days)
Section titled “4.3 Daily Trend Analysis (Last 7 Days)”SELECT REASONER_NAME, DATE_TRUNC('day', TIMESTAMP) AS day, AVG(MEMORY_UTILIZATION) AS avg_memory, MAX(MEMORY_UTILIZATION) AS peak_memoryFROM relationalai.observability_preview.logic_reasoner__memory_utilizationWHERE timestamp >= DATEADD(day, -7, CURRENT_TIMESTAMP())GROUP BY REASONER_NAME, dayORDER BY day DESC;4.4 Reasoner-Specific Filtering
Section titled “4.4 Reasoner-Specific Filtering”SELECT *FROM relationalai.observability_preview.logic_reasoner__demandWHERE REASONER_NAME = 'my_reasoner' AND timestamp >= DATEADD(hour, -1, CURRENT_TIMESTAMP());4.5 Combined Multi-Metric Query
Section titled “4.5 Combined Multi-Metric Query”SELECT m.REASONER_NAME, m.REASONER_ID, TIME_SLICE(m.TIMESTAMP, 10, 'SECOND') AS TIME_BUCKET, AVG(m.MEMORY_UTILIZATION) AS MEMORY_UTILIZATION, AVG(c.CPU_UTILIZATION) AS CPU_UTILIZATION, AVG(d.DEMAND) AS AVG_DEMANDFROM observability_preview.logic_reasoner__memory_utilization m
JOIN observability_preview.logic_reasoner__cpu_utilization c ON m.REASONER_ID = c.REASONER_ID AND TIME_SLICE(m.TIMESTAMP, 10, 'SECOND') = TIME_SLICE(c.TIMESTAMP, 10, 'SECOND')
JOIN observability_preview.logic_reasoner__demand d ON m.REASONER_ID = d.REASONER_ID AND TIME_SLICE(m.TIMESTAMP, 10, 'SECOND') = TIME_SLICE(d.TIMESTAMP, 10, 'SECOND')
WHERE m.TIMESTAMP >= DATEADD(hour, -1, CURRENT_TIMESTAMP) AND c.TIMESTAMP >= DATEADD(hour, -1, CURRENT_TIMESTAMP) AND d.TIMESTAMP >= DATEADD(hour, -1, CURRENT_TIMESTAMP)GROUP BY m.REASONER_NAME, TIME_BUCKETORDER BY TIME_BUCKET DESCLIMIT 10;