pub struct AccessTracker { /* private fields */ }Expand description
Access pattern tracker
Implementations§
Source§impl AccessTracker
impl AccessTracker
Sourcepub fn new(max_history_size: usize, analysis_window: Duration) -> Self
pub fn new(max_history_size: usize, analysis_window: Duration) -> Self
Create a new access tracker
Sourcepub fn record_access(&mut self, index_id: &str, latency_us: u64)
pub fn record_access(&mut self, index_id: &str, latency_us: u64)
Record an access to an index
Sourcepub fn get_statistics(&self, index_id: &str) -> AccessStatistics
pub fn get_statistics(&self, index_id: &str) -> AccessStatistics
Get access statistics for an index
Sourcepub fn update_metadata(&self, metadata: &mut IndexMetadata)
pub fn update_metadata(&self, metadata: &mut IndexMetadata)
Update metadata with current access statistics
Sourcepub fn predict_future_access(&self, index_id: &str, horizon: Duration) -> f64
pub fn predict_future_access(&self, index_id: &str, horizon: Duration) -> f64
Predict future access based on historical patterns
Sourcepub fn cleanup_old_entries(&mut self, retention_period: Duration)
pub fn cleanup_old_entries(&mut self, retention_period: Duration)
Clear old history entries
Auto Trait Implementations§
impl Freeze for AccessTracker
impl RefUnwindSafe for AccessTracker
impl Send for AccessTracker
impl Sync for AccessTracker
impl Unpin for AccessTracker
impl UnwindSafe for AccessTracker
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> 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> 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 moreSource§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self to the equivalent element of its superset.