Skip to content
This repository was archived by the owner on Jan 7, 2025. It is now read-only.

Commit c288d6f

Browse files
authored
refactor: split base_cost.rs into multiple files (#156)
Move cost model code to separate files. - Statistics generation -> `src/cost/base_cost/stats.rs` - Filter selectivity -> `src/cost/base_cost/filter.rs` - Join selectivity -> `src/cost/base_cost/join.rs` - Limit cardinality -> `src/cost/base_cost/limit.rs` - Agg cardinality -> `src/cost/base_cost/agg.rs`
1 parent 47eef56 commit c288d6f

File tree

12 files changed

+2696
-2575
lines changed

12 files changed

+2696
-2575
lines changed

optd-datafusion-repr/src/bin/test_optimize.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ use optd_core::{
88
rules::{Rule, RuleWrapper},
99
};
1010
use optd_datafusion_repr::{
11-
cost::{base_cost::DataFusionPerTableStats, OptCostModel},
11+
cost::{DataFusionPerTableStats, OptCostModel},
1212
plan_nodes::{
1313
BinOpExpr, BinOpType, ColumnRefExpr, ConstantExpr, JoinType, LogicalFilter, LogicalJoin,
1414
LogicalScan, OptRelNode, OptRelNodeTyp, PlanNode,

optd-datafusion-repr/src/cost.rs

+2-4
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,9 @@
11
pub mod adaptive_cost;
22
pub mod base_cost;
3-
mod stats;
43

54
pub use adaptive_cost::{AdaptiveCostModel, RuntimeAdaptionStorage, DEFAULT_DECAY};
6-
pub use base_cost::{
7-
BaseTableStats, OptCostModel, PerColumnStats, PerTableStats, COMPUTE_COST, IO_COST, ROW_COUNT,
8-
};
5+
pub use base_cost::stats::{BaseTableStats, DataFusionBaseTableStats, DataFusionPerTableStats};
6+
pub use base_cost::{OptCostModel, COMPUTE_COST, IO_COST, ROW_COUNT};
97

108
pub trait WithRuntimeStatistics {
119
fn get_runtime_statistics(&self) -> RuntimeAdaptionStorage;

optd-datafusion-repr/src/cost/adaptive_cost.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ use optd_core::{
1010
rel_node::{RelNode, Value},
1111
};
1212

13-
use super::base_cost::{
13+
use super::base_cost::stats::{
1414
BaseTableStats, DataFusionDistribution, DataFusionMostCommonValues, Distribution,
1515
MostCommonValues,
1616
};

0 commit comments

Comments
 (0)