pub struct IndexManager { /* private fields */ }Expand description
Enhanced indexing manager for the RDF store
Implementations§
Source§impl IndexManager
impl IndexManager
Sourcepub fn new(config: IndexConfig) -> Self
pub fn new(config: IndexConfig) -> Self
Create a new index manager with the given configuration
Sourcepub fn create_subject_index(&mut self)
pub fn create_subject_index(&mut self)
Create a specialized index for subjects
Sourcepub fn create_predicate_index(&mut self)
pub fn create_predicate_index(&mut self)
Create a specialized index for predicates
Sourcepub fn create_object_index(&mut self)
pub fn create_object_index(&mut self)
Create a specialized index for objects
Sourcepub fn create_subject_predicate_index(&mut self)
pub fn create_subject_predicate_index(&mut self)
Create a composite index for subject-predicate pairs
Sourcepub fn create_fulltext_index(&mut self)
pub fn create_fulltext_index(&mut self)
Create a full-text index for literal values
Sourcepub fn insert_quad(&mut self, quad: &Quad)
pub fn insert_quad(&mut self, quad: &Quad)
Add a quad to all relevant indexes
Sourcepub fn remove_quad(&mut self, quad: &Quad)
pub fn remove_quad(&mut self, quad: &Quad)
Remove a quad from all relevant indexes
Sourcepub fn query_optimized(
&mut self,
subject: Option<&Subject>,
predicate: Option<&Predicate>,
object: Option<&Object>,
graph_name: Option<&GraphName>,
) -> Option<Vec<Quad>>
pub fn query_optimized( &mut self, subject: Option<&Subject>, predicate: Option<&Predicate>, object: Option<&Object>, graph_name: Option<&GraphName>, ) -> Option<Vec<Quad>>
Query using the most appropriate index
Sourcepub fn stats(&self) -> IndexStats
pub fn stats(&self) -> IndexStats
Get overall statistics for the index manager
Sourcepub fn total_memory_usage(&self) -> usize
pub fn total_memory_usage(&self) -> usize
Get total memory usage of all indexes
Sourcepub fn maintenance(&mut self)
pub fn maintenance(&mut self)
Perform maintenance operations (cleanup, optimization)
Trait Implementations§
Source§impl Debug for IndexManager
impl Debug for IndexManager
Auto Trait Implementations§
impl Freeze for IndexManager
impl !RefUnwindSafe for IndexManager
impl Send for IndexManager
impl Sync for IndexManager
impl Unpin for IndexManager
impl UnsafeUnpin for IndexManager
impl !UnwindSafe for IndexManager
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 more