pub struct CollapsingLowestDenseStore { /* private fields */ }Expand description
A dense store that collapses lowest-indexed bins when capacity is exceeded.
This store maintains a maximum number of bins. When adding a new index would exceed this limit, the lowest-indexed bins are collapsed (merged into the next lowest bin), sacrificing accuracy for lower quantiles to preserve accuracy for higher quantiles.
Use this store when:
- You need bounded memory usage
- Higher quantiles (e.g., p95, p99) are more important than lower quantiles
- You’re tracking latencies or other metrics where the tail matters most
Implementations§
Trait Implementations§
Source§impl Clone for CollapsingLowestDenseStore
impl Clone for CollapsingLowestDenseStore
Source§fn clone(&self) -> CollapsingLowestDenseStore
fn clone(&self) -> CollapsingLowestDenseStore
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for CollapsingLowestDenseStore
impl Debug for CollapsingLowestDenseStore
Source§impl Default for CollapsingLowestDenseStore
impl Default for CollapsingLowestDenseStore
Source§impl Store for CollapsingLowestDenseStore
impl Store for CollapsingLowestDenseStore
Source§fn total_count(&self) -> u64
fn total_count(&self) -> u64
Returns the total count across all bins.
Source§fn min_index(&self) -> Option<i32>
fn min_index(&self) -> Option<i32>
Returns the minimum index with a non-zero count, or
None if empty.Source§fn max_index(&self) -> Option<i32>
fn max_index(&self) -> Option<i32>
Returns the maximum index with a non-zero count, or
None if empty.Source§fn key_at_rank(&self, rank: u64) -> Option<i32>
fn key_at_rank(&self, rank: u64) -> Option<i32>
Returns the index of the bin containing the given rank. Read more
Source§fn merge_from_proto(
&mut self,
proto: &ProtoStore,
) -> Result<(), ProtoConversionError>
fn merge_from_proto( &mut self, proto: &ProtoStore, ) -> Result<(), ProtoConversionError>
Populates this store from a protobuf
Store.impl Eq for CollapsingLowestDenseStore
impl StructuralPartialEq for CollapsingLowestDenseStore
Auto Trait Implementations§
impl Freeze for CollapsingLowestDenseStore
impl RefUnwindSafe for CollapsingLowestDenseStore
impl Send for CollapsingLowestDenseStore
impl Sync for CollapsingLowestDenseStore
impl Unpin for CollapsingLowestDenseStore
impl UnwindSafe for CollapsingLowestDenseStore
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request