iterators_*_rollup
A newer version of this documentation is available. Use the version menu above to view the most up-to-date release of the Greenplum 4.x documentation.
iterators_*_rollup
The iterators_*_rollup set of views aggregate the metrics stored in the iterators_* tables. A query iterator refers to a node or operation in a query plan. For example, a sequential scan operation may be one type of iterator in a particular query plan. For each iterator in a query plan, the iterators_* tables store the metrics collected from each segment instance. The iterators_*_rollup views summarize the query iterator metrics across all segments in the system.
The tmid, ssid and ccnt columns are the composite key that uniquely identifies a particular query.
There are three iterators rollup views, all having the same columns:
- The iterators_now_rollup view shows iterator data from the interators_now table aggregated across all segments in the system.
- The iterators_tail_rollup view shows iterator data from the interators_tail table aggregated across all segments in the system.
- The iterators_history_rollup shows iterator data from the interators_history table aggregated across all segments in the system.
See also the iterators_* tables for more information about the query plan iterator types and the metrics collected for each iterator.
Column | Type | Description |
---|---|---|
sample_time | timestamp | The ctime from the associated iterators_* table. |
tmid | int | A time identifier for a particular query. All iterator records associated with the query will have the same tmid. |
ssid | int | The session id as shown by the gp_session_id parameter. All iterator records associated with the query will have the same ssid. |
ccnt | int | The command number within this session as shown by gp_command_count parameter. All iterator records associated with the query will have the same ccnt. |
nid | int |
The ID of this query plan node from the slice plan. |
pnid | int | The pnid (slice plan parent node ID) from the associated iterators_* table. |
ntype | text |
The ntype (node/iterator type) from the associated iterators_* table. |
nstatus | text | The accumulated status of this iterator. Possible values are: Initialize, Executing, or Finished. |
tstart | timestamp | The average start time for this iterator. |
tduration | numeric | The average execution time for this iterator. |
pmemsize | numeric | The average work memory allocated by the Greenplum planner to this iterator’s query processes. |
pmemmax | numeric | The average of the maximum planner work memory used by this iterator’s query processes. |
memsize | numeric | The average OS memory allocated to this iterator’s processes. |
memresid | numeric | The average resident memory allocated to this iterator’s processes (as opposed to shared memory). |
memshare | numeric | The average shared memory allocated to this iterator’s processes. |
cpu_elapsed | numeric | Sum of the CPU usage of all segment processes executing this iterator. |
cpu_currpct | double precision |
The current average percentage of CPU utilization used by this iterator’s processes. This value is always zero for historical (completed) iterators. |
rows_out | numeric | The total number of actual rows output for this iterator on all segments. |
rows_out_est | numeric | The total number of output rows for all segments as estimated by the query planner. |
skew_cpu | numeric | Coefficient of variation for cpu_elapsed of iterators across all segments for this query, multiplied by 100. For example, a value of .95 is rendered as 95. |
skew_rows | numeric | Coefficient of variation for rows_out of iterators across all segments for this query, multiplied by 100. For example, a value of .95 is rendered as 95. |
m0 | text | The name (m0_name), unit of measure (m0_unit), average actual value (m0_val), and average estimated value (m0_est) for this iterator metric across all segments. The m0 metric is always rows for all iterator types. |
m1 | text | The name (m1_name), unit of measure (m1_unit), average actual value (m1_val), and average estimated value (m1_est) for this iterator metric across all segments. |
m2 | text | The name (m2_name), unit of measure (m2_unit), average actual value (m2_val), and average estimated value (m2_est) for this iterator metric across all segments. |
m3 | text | The name (m3_name), unit of measure (m3_unit), average actual value (m3_val), and average estimated value (m3_est) for this iterator metric across all segments. |
m4 | text | The name (m4_name), unit of measure (m4_unit), average actual value (m4_val), and average estimated value (m4_est) for this iterator metric across all segments. |
m5 | text | The name (m5_name), unit of measure (m5_unit), average actual value (m5_val), and average estimated value (m5_est) for this iterator metric across all segments. |
m6 | text | The name (m6_name), unit of measure (m6_unit), average actual value (m6_val), and average estimated value (m6_est) for this iterator metric across all segments. |
m7 | text | The name (m7_name), unit of measure (m7_unit), average actual value (m7_val), and average estimated value (m7_est) for this iterator metric across all segments. |
m8 | text | The name (m8_name), unit of measure (m8_unit), average actual value (m8_val), and average estimated value (m8_est) for this iterator metric across all segments. |
m9 | text | The name (m9_name), unit of measure (m9_unit), average actual value (m9_val), and average estimated value (m9_est) for this iterator metric across all segments. |
m10 - m5 | text | Metrics m10 through m15 are not currently used by any iterator types. |
t0 | text | The name of the relation (t0_val) being scanned by this iterator. This metric is collected only for iterators that perform scan operations such as a sequential scan or function scan. |