PS_history is a tool which collects historical snapshots of the
  PERFORMANCE_SCHEMA (P_S). This allows you to trend P_S values
  over time, for example, it is possible to look at the 95 th
  percentile response time for a query over time.
  
  PS_history is stored procedure and event based, and thus it
  resides entirely inside of the database with no external
  dependencies. It uses a clever technique to capture all of the
  P_S data in one consistent snapshot. This ensures that all of the
  sys_history views (bundled now with PS_history) have a consistent
  set of data.
  
  By default, as long as the event_schedule is enabled, PS_history
  will collect data every 30 seconds. If a snapshot takes 30
  seconds, there will be a 30 second delay before the next snapshot
  starts. This value can be changed by calling the
  `ps_history`.`set_collection_interval`(N) where N is the number
  of seconds between samples.
  
  The `sys_history` schema is …
  PS_history is a tool which collects historical snapshots of the
  PERFORMANCE_SCHEMA (P_S). This allows you to trend P_S values
  over time, for example, it is possible to look at the 95 th
  percentile response time for a query over time.
  
  PS_history is stored procedure and event based, and thus it
  resides entirely inside of the database with no external
  dependencies. It uses a clever technique to capture all of the
  P_S data in one consistent snapshot. This ensures that all of the
  sys_history views (bundled now with PS_history) have a consistent
  set of data.
  
  By default, as long as the event_schedule is enabled, PS_history
  will collect data every 30 seconds. If a snapshot takes 30
  seconds, there will be a 30 second delay before the next snapshot
  starts. This value can be changed by calling the
  `ps_history`.`set_collection_interval`(N) where N is the number
  of seconds between samples.
  
  The `sys_history` schema is …