Database Reference
In-Depth Information
up in many tiny buckets, which may be inefficient. min_sstable_size is to
specify the minimum size of SSTable, below which, all the SSTables are assumed
to be in one bucket and compacted. The unit of min_sstable_size is bytes
and the default value is 50 MB.
min_threshold and max_threshold (specific to SizeTieredCompac-
tionStrategy ): This defines the minimum number of similar sized SSTables
to start compaction. max_threshold is the maximum number of SSTables to
consider in a compaction process. The default value of min_threshold is 4
and the default value of max_threshold is 32.
bucket_high and bucket_low (specific to SizeTieredCompac-
tionStrategy ): When we mentioned similar sizes in the previous point, what
we meant is explained here. A set of SSTables are assumed to be in the same
bucket to be compacted if their size lies within the range described by this for-
mula: [average_size*bucket_low, aver-
age_size*bucket_high] . Ideally, bucket_low should be a positive
decimal fraction value less than one, and bucket_high is a decimal fraction
more than one. Default values for bucket_low and bucket_high are 0.5 and
1.5 respectively.
cold_reads_to_omit (specific to SizeTieredCompac-
tionStrategy ): Cassandra keeps track of which SSTable contributes to how
many reads. So there may be cases where some SSTables contribute very little to
nothing to the reads. It may not be worth the additional effort to compact those
"cold" SSTables because they are accessed once in a while. For example, you
have a table that has total 200 reads per second overall, of which 100 are contrib-
uted by SSTable S1, 85 by S2, 10 by S3, and 5 by S4. If you have
cold_reads_to_omit as 0.1, then SSTables that cumulatively contribute to
200*0.1 or 20 reads will not be considered for compaction. Adding from the tini-
est ones, S4 and S3 contribute to only 15 reads per second, so they will not be
considered a candidate for compaction. Values for cold_reads_to_omit can
be anything between 0.0 and to 1. However, you would not want to set it to 1, ig-
noring all the SSTables. Setting it to zero disabled discriminating the SSTables'
eligibility to compact based on its contribution in reads. The default in Cassandra
2.1 and onwards is 0.05 and in the previous versions it is 0.
sstable_size_in_mb (specific to LeveledCompactionStrategy ):
This is the target size for SSTable in LeveledCompactionStrategy . Cas-
sandra tries to keep SSTable size less than or equal to this value, but SSTable may
Search WWH ::




Custom Search