pub struct CompactionCounters {
pub compactions: u64,
pub compaction_bytes_written: u64,
pub compaction_time_ns: u64,
pub total_layers_added: u64,
pub max_layer_count: u64,
pub layer_size_histogram: [u64; 32],
}Expand description
Metrics related to LSM tree churn, layer depths, and compaction performance.
Fields§
§compactions: u64Total number of compaction events that merged layers together.
compaction_bytes_written: u64Total bytes written during compaction, useful for measuring write amplification.
compaction_time_ns: u64Total duration spent compacting layers.
total_layers_added: u64Number of mutable layers sealed. Useful for measuring churn.
max_layer_count: u64The maximum depth of the LSM tree observed. An indicator of worst-case read amplification.
layer_size_histogram: [u64; 32]Log2 histogram of the sizes of newly compacted layers, used to verify compaction heuristics.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for CompactionCounters
impl RefUnwindSafe for CompactionCounters
impl Send for CompactionCounters
impl Sync for CompactionCounters
impl Unpin for CompactionCounters
impl UnwindSafe for CompactionCounters
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
§impl<T, D> Encode<Ambiguous1, D> for Twhere
D: ResourceDialect,
impl<T, D> Encode<Ambiguous1, D> for Twhere
D: ResourceDialect,
§impl<T, D> Encode<Ambiguous2, D> for Twhere
D: ResourceDialect,
impl<T, D> Encode<Ambiguous2, D> for Twhere
D: ResourceDialect,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more