Interface RegionNormalizer

All Superinterfaces:
org.apache.hadoop.conf.Configurable
All Known Implementing Classes:
SimpleRegionNormalizer

@Private interface RegionNormalizer extends org.apache.hadoop.conf.Configurable
Performs "normalization" of regions of a table, making sure that suboptimal choice of split keys doesn't leave cluster in a situation when some regions are substantially larger than others for considerable amount of time. Users who want to use this feature could either use default SimpleRegionNormalizer or plug in their own implementation. Please note that overly aggressive normalization rules (attempting to make all regions perfectly equal in size) could potentially lead to "split/merge storms".
  • Method Details

    • setMasterServices

      void setMasterServices(MasterServices masterServices)
      Set the master service. Must be called before first call to computePlansForTable(TableDescriptor).
      Parameters:
      masterServices - master services to use
    • computePlansForTable

      Computes a list of normalizer actions to perform on the target table. This is the primary entry-point from the Master driving a normalization activity.
      Parameters:
      tableDescriptor - table descriptor for table which needs normalize
      Returns:
      A list of the normalization actions to perform, or an empty list if there's nothing to do.