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.
Normalization plan to merge adjacent regions.
A helper for constructing instances of
A POJO that caries details about a region selected for normalization through the pipeline.
Chore that will periodically call
Factory to create instance of
This class encapsulates the details of the
A specialized collection that holds pending work for the
Simple implementation of region normalizer.
Holds the configuration values read from
Normalization plan to split a region.
RegionNormalizerFactoryprovides an entry point for creating an instance of the
RegionNormalizerManagerencapsulates the whole Region Normalizer subsystem. You'll find one of these hanging off of the
HMaster, which uses it to delegate API calls. There is usually only a single instance of this class.
To see detailed logging of the application of these configuration values, set the log
level for this package to
RegionNormalizerTrackerprovides a system by which the Normalizer can be disabled at runtime. It currently does this by managing a znode, but this is an implementation detail.
Queuethat permits a single copy of a given work item to exist in the queue at one time. It also provides a facility for a producer to add an item to the front of the line. Consumers are blocked waiting for new work.
RegionNormalizerChorewakes up periodically and schedules new normalization work, adding targets to the queue.
RegionNormalizerWorkerruns in a daemon thread, grabbing work off the queue as is it becomes available.
SimpleRegionNormalizerimplements the logic for calculating target region sizes and emitting a list of corresponding
Copyright © 2007–2020 The Apache Software Foundation. All rights reserved.