# Scheduling
+ There are two kinds of components inside `PD` to control the scheduling behaviour.
+ `Checker` (Passive)
  + Patrol the regions periodically to fix the unhealthy or incorrect `region` status
    + e.g: 
      + Replace the peer (`Down`) 
      + Maintain the replicas
      + Merge the empty regions
+ `Scheduler` (Proactive)
  + Monitor certain indicators of the cluster and proactively schedules it to achieve certain goals
    + e.g: 
      + Balance the `region` number and size to make sure the storage utilization is balanced 
      + Transfer the hot `leader` to the free `store` to prevent the workload `hot spot`

------------------------------------------------------------

