Class StripeStoreConfig
java.lang.Object
org.apache.hadoop.hbase.regionserver.StripeStoreConfig
Configuration class for stripe store and compactions. See
StripeStoreFileManager for
general documentation. See getters for the description of each setting.-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final doublestatic final StringWhether to flush memstore to L0 files, or directly to stripes.private final booleanstatic final StringThe initial stripe count to create.private final intprivate final intprivate static final org.slf4j.Loggerstatic final StringThe maximum number of files to compact within a stripe; same as for regular compaction.static final StringWhen splitting region, the maximum size imbalance to allow in an attempt to split at a stripe boundary, so that no files go to both regions.private final floatstatic final StringThe minimum number of files to compact within a stripe; same as for regular compaction.static final StringThe minimum number of files to compact when compacting L0; same as minFiles for regular compaction.static final StringThe size the stripe should achieve to be considered for splitting into multiple stripes.private final longstatic final StringThe target count of new stripes to produce when splitting a stripe.private final floatprivate final longprivate final intprivate final int -
Constructor Summary
ConstructorsConstructorDescriptionStripeStoreConfig(org.apache.hadoop.conf.Configuration config, StoreConfigInformation sci) -
Method Summary
-
Field Details
-
LOG
-
MAX_FILES_KEY
The maximum number of files to compact within a stripe; same as for regular compaction.- See Also:
-
MIN_FILES_KEY
The minimum number of files to compact within a stripe; same as for regular compaction.- See Also:
-
MIN_FILES_L0_KEY
The minimum number of files to compact when compacting L0; same as minFiles for regular compaction. Given that L0 causes unnecessary overwriting of the data, should be higher than regular minFiles.- See Also:
-
SIZE_TO_SPLIT_KEY
The size the stripe should achieve to be considered for splitting into multiple stripes. Stripe will be split when it can be fully compacted, and it is above this size.- See Also:
-
SPLIT_PARTS_KEY
The target count of new stripes to produce when splitting a stripe. A floating point number, default is 2. Values less than 1 will be converted to 1/x. Non-whole numbers will produce unbalanced splits, which may be good for some cases. In this case the "smaller" of the new stripes will always be the rightmost one. If the stripe is bigger than sizeToSplit when splitting, this will be adjusted by a whole increment.- See Also:
-
INITIAL_STRIPE_COUNT_KEY
The initial stripe count to create. If the row distribution is roughly the same over time, it's good to set this to a count of stripes that is expected to be achieved in most regions, to get this count from the outset and prevent unnecessary splitting.- See Also:
-
FLUSH_TO_L0_KEY
Whether to flush memstore to L0 files, or directly to stripes.- See Also:
-
MAX_REGION_SPLIT_IMBALANCE_KEY
When splitting region, the maximum size imbalance to allow in an attempt to split at a stripe boundary, so that no files go to both regions. Most users won't need to change that.- See Also:
-
maxRegionSplitImbalance
-
level0CompactMinFiles
-
stripeCompactMinFiles
-
stripeCompactMaxFiles
-
initialCount
-
sizeToSplitAt
-
splitPartCount
-
flushIntoL0
-
splitPartSize
-
EPSILON
- See Also:
-
-
Constructor Details
-
StripeStoreConfig
-
-
Method Details
-
getFloat
-
getMaxSplitImbalance
-
getLevel0MinFiles
-
getStripeCompactMinFiles
-
getStripeCompactMaxFiles
-
isUsingL0Flush
-
getSplitSize
-
getInitialCount
-
getSplitCount
-
getSplitPartSize
- Returns:
- the desired size of the target stripe when splitting, in bytes. Derived from
getSplitSize()andgetSplitCount().
-