Skip to main content

linkrs_query/optimizer/
stats.rs

1//! Statistics Information Module
2//!
3//! Provide the functionality for managing and collecting statistical information required by the query optimizer.
4//!
5//! ## Module Structure
6//!
7//! “Manager” refers to a statistical information manager that oversees and manages all statistical data in a centralized manner.
8//! `tag` – Statistics on tag usage
9//! “Edge” – Statistical information about the type of edges
10//! “Property” – Statistical information about properties.
11//! `histogram` – Statistical information in the form of a histogram.
12//! “Feedback” – A module for collecting runtime statistics and feedback.
13
14pub mod collector;
15pub mod edge;
16pub mod feedback;
17pub mod histogram;
18pub mod manager;
19pub mod property;
20pub mod tag;
21pub mod view;
22
23// Re-export the main types from the feedback module.
24pub use collector::{CollectedSummary, StatisticsCollector};
25pub use edge::{EdgeTypeStatistics, HotVertexInfo, SkewnessLevel};
26pub use feedback::{
27    generate_query_fingerprint, normalize_query, CardinalityFeedbackManager, DecisionFeedbackStore,
28    DecorrelationAdvice, FeedbackDrivenSelectivity, OperatorFeedback, QueryExecutionFeedback,
29    QueryFeedbackHistory, SelectivityFeedbackManager,
30};
31pub use histogram::{RangeCondition, ValueHistogram, ValueHistogramBucket};
32pub use manager::StatisticsManager;
33pub use property::{PropertyCombinationStats, PropertyStatistics};
34pub use tag::TagStatistics;
35pub use view::StatsView;