Broker Dashboard
Pulse monitors Pinot’s memory, CPU, garbage collection, and threads to assess JVM health and identify performance issues.
With Pulse, you can:
- Track query compilation, execution, reduce operations, and scatter-gather behavior to evaluate query performance.
- View burst QPS, server health, and request load to monitor system throughput and reliability.
In the Pulse UI, navigate to the menu option and select Pinot > Broker Dashboard. The metrics and charts appear on the screen for you to analyze.
JVM Metrics Overview
Pulse provides a range of JVM-level charts to help monitor Pinot’s internal health. These include:
- Memory Usage: Tracks heap and non-heap memory across initialization, usage, and limits.
- CPU and Swap: Shows system and process CPU usage, and available swap space.
- Garbage Collection (GC): Displays frequency and duration of GC events for young and old generations.
- Thread Activity: Monitors live thread counts, peak usage, and total threads started.
These charts help identify memory pressure, performance degradation, and potential bottlenecks in the Pinot JVM process.
Query Performance Metrics
Pulse charts also provide deep insights into Pinot query behavior across brokers:
- Query Compilation: Tracks the count, latency, and max time of compiled queries by table and host.
- Query Execution: Shows execution time, execution count, and performance trends by host/table.
- Reduce & Scatter-Gather Operations: Monitors data aggregation and distribution patterns per table and host.
- Burst QPS: Highlights peak query throughput at both table and host levels.
- Unhealthy Servers: Flags unresponsive or degraded Pinot servers.
These metrics help in tuning Pinot’s query pipeline and understanding real-time system behavior.
Pinot Broker Charts
Chart | Description |
---|---|
Memory: Heap Memory | This chart shows the heap memory usage at different stages:
|
Memory: Non-Heap Memory | This chart shows the heap memory usage at different stages:
|
Operating System: CPU Load | This chart shows:
|
Operating System: Free Swap Space Size | Shows the amount of free swap space available on the host system (In Bytes), as seen by the JVM process running the JVM Broker. |
GC: Collection Count | Shows the number of garbage collection (GC) events over time for both:
Tracks the frequency of GC events to help identify memory pressure and potential performance issues in the JVM. |
GC: Collection Time | Shows the time taken (in milliseconds) for each GC event.
These charts help assess JVM memory management efficiency. |
Threading: Thread Count | This chart displays key thread metrics for the Pinot JVM process:
|
Max Burst QPS: Table level | Shows the maximum burst QPS (Queries per second) per table as defined by the query throttle configuration. |
Max Burst QPS: Host level | Shows the maximum burst QPS (Queries per second) per host as defined by the query throttle configuration. |
Reduce Operations: Table Level | Shows the number of reduce operations on the Pinot Broker per table. |
Reduce Operations: Host Level | Shows the number of reduce operations on the Pinot Broker per host. |
Unhealthy Servers | Shows the number of unhealthy Pinot servers. |
Reduce Operations: One-Minute Rate | Shows a one-minute rate of reduced operations on the Pinot Broker. |
Reduce Operation: Max Time | Shows the maximum reduced operation time observed by Pinot Broker. |
Scatter Gather: Host Level | Show the number of scatter-gather operations performed by the Broker per host for queries. |
Scatter Gather: Table Level | Show the number of scatter-gather operations performed by the Broker per table for queries. |
Scatter Gather: One Minute Rate | Show the One Minute Rate of the number of scatter-gather operations performed by the Broker per table for queries. |
Request Compilation: Table Level | Shows the total number of queries compiled by the Broker per table. |
Request Compilation: Host Level | Shows the total number of queries compiled by the Broker per host. |
Request Compilation: Latency Stats | Shows the 99th and 999th percentile latency of query request compilation for different tables. |
Request Compilation: Max Time | Shows the maximum time taken by the broker to compile or parse a query request. |
Query Execution: Max Execution Time | Shows the maximum query execution time observed by the Pinot Broker. |
Query Execution: Host Level | Shows the count of queries executed per host. |
Query Execution: Table Level | Shows the count of queries executed per table. |