Greenplum Performance Monitor

posted Jul 27, 2012, 8:28 AM by Sachchida Ojha
1. Greenplum Performance Monitor is comprised of data collection agents that run on the master host and each segment host. The agents collect performance data about active queries and system utilization and send it to the Greenplum master at regular intervals. The data is stored in a dedicated database on the master, where it can be accessed through the Greenplum Performance Monitor Console or through SQL queries.

2. The master agent polls all segment agents for performance data at a configurable interval (known as the quantum). The master agent pulls together the data from all segments, stores it in flat files, and periodically commits the data in the files to the Greenplum Performance Monitor database. Data collected by the Performance Monitor agents is stored in a dedicated database called "gpperfmon" within Greenplum Database.

The database consists of three sets of tables: tables store data on currently active queries.
2.history tables store data on completed queries
3.tail tables are for data in transition.

The now and tail data are stored as text files on the master file system, and accessed by Greenplum Database via external tables. The history tables are regular database tables stored within the gpperfmon database.

There are the following categories of tables:

•The database_* tables store query workload information for a Greenplum Database instance.

The emcconnect_history table displays information about ConnectEMC events and alerts. ConnectEMC events are triggered based on a hardware failure, a fix to a failed hardware component, or a Greenplum Database startup. Once an ConnectEMC event is triggered, an alert is sent to EMC Support.
Note: We can also enable or disable events based on the SEVERITY of the events.  For example
The following  command disables the SNMP events that are "Informational" and "Warning" pertaining to the battery.   omconfig system events source=snmptraps type=battery severity=Critical  
The following command will disable *all* system SNMP events of types "Informational" and "Warning" and only allow those of type "Critical" to go out.   omconfig system events source=snmptraps type=all severity=Critical
•The filerep_* tables store health and status metrics for file replication process. This process is how high-availability/mirroring is achieved in Greenplum Database. Statistics are maintained for each primary-mirror pair.
•The health_* tables store system health metrics for the EMC Data Computing Appliance.
•The interface_stats_* tables statistical metrics for each active interface for a Greenplum Database instance.
•The iterators_* tables store information about query plan iterators and their metrics. A query iterator refers to a node or operation in a query plan.
•The queries_* tables store high-level query status information.
•The segment_* tables store memory allocation statistics for the Greenplum Database segment instances.
•The socket_stats_* tables store statistical metrics about socket usage for a Greenplum Database instance.
•The system_* tables store system utilization metrics.
•The tcp_stats_* tables store statistical metrics about TCP communications for a Greenplum Database instance.
•The udp_stats_* tables store statistical metrics about UDP communications for a Greenplum Database instance.

The Performance Monitor database also contains the following views:

•The dynamic_memory_info view shows an aggregate of all the segments per host and the amount of dynamic memory used per host.
•The iterators_*_rollup set of views summarize the query iterator metrics across all segments in the system.
•The memory_info view shows per-host memory information from the system_history and segment_history tables.