The gpperfmon Database

The gpperfmon Database

The gpperfmon database is a dedicated database where data collection agents on Greenplum segment hosts save statistics. The optional Greenplum Command Center management tool requires the database. The gpperfmon database is created using the gpperfmon_install command-line utility. The utility creates the database and the gpmon database role and enables monitoring agents on the segment hosts. See the gpperfmon_install reference in the Greenplum Database Utility Guide for information about using the utility and configuring the data collection agents.

The gpperfmon database consists of three sets of tables.

  • now tables store data on current system metrics such as active queries.
  • history tables store data on historical metrics.
  • tail tables are for data in transition. Tail tables are for internal use only and should not be queried by users. The now and tail data are stored as text files on the master host file system, and accessed by the gpperfmon database via external tables. The history tables are regular database tables stored within the gpperfmondatabase.

The database contains the following categories of tables:

  • The database_* tables store query workload information for a Greenplum Database instance.
  • The diskspace_* tables store diskspace metrics.
  • The filerep_* tables store health and status metrics for the file replication process. This process is how high-availability/mirroring is achieved in Greenplum Database instance. Statistics are maintained for each primary-mirror pair.
  • The interface_stats_* tables store statistical metrics for each active interface of a Greenplum Database instance. Note: These tables are in place for future use and are not currently populated.
  • The log_alert_* tables store information about pg_log errors and warnings.
  • 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. Note: These tables are in place for future use and are not currently populated.
  • The system_* tables store system utilization metrics.

The gpperfmon 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 memory_info view shows per-host memory information from the system_history and segment_history tables.