Class EncodingStats

java.lang.Object
org.apache.cassandra.db.rows.EncodingStats
All Implemented Interfaces:
IMeasurableMemory

public class EncodingStats extends Object implements IMeasurableMemory
Stats used for the encoding of the rows and tombstones of a given source.

Those stats are used to optimize the on-wire and on-disk storage of rows. More precisely, the minTimestamp, minLocalDeletionTime and minTTL stats are used to delta-encode those information for the sake of vint encoding.

Note that due to their use, those stats can suffer to be somewhat inaccurate (the more incurrate they are, the less effective the storage will be, but provided the stats are not completly wacky, this shouldn't have too huge an impact on performance) and in fact they will not always be accurate for reasons explained in SerializationHeader.make(org.apache.cassandra.schema.TableMetadata, java.util.Collection<org.apache.cassandra.io.sstable.format.SSTableReader>).

  • Field Details

    • TIMESTAMP_EPOCH

      public static final long TIMESTAMP_EPOCH
    • NO_STATS

      public static final EncodingStats NO_STATS
    • HEAP_SIZE

      public static final long HEAP_SIZE
    • serializer

      public static final EncodingStats.Serializer serializer
    • minTimestamp

      public final long minTimestamp
    • minLocalDeletionTime

      public final long minLocalDeletionTime
    • minTTL

      public final int minTTL
  • Constructor Details

    • EncodingStats

      public EncodingStats(long minTimestamp, long minLocalDeletionTime, int minTTL)
  • Method Details