mutable
A Database System for Research and Fast Prototyping
Loading...
Searching...
No Matches
Public Types | Public Member Functions
m::CostFunction Struct Reference

#include <CostFunction.hpp>

Inheritance diagram for m::CostFunction:
[legend]
Collaboration diagram for m::CostFunction:
[legend]

Public Types

using Subproblem = SmallBitset
 

Public Member Functions

 CostFunction ()
 
virtual ~CostFunction ()=default
 
template<typename PlanTable >
double calculate_filter_cost (const QueryGraph &G, const PlanTable &PT, const CardinalityEstimator &CE, Subproblem sub, const cnf::CNF &condition) const
 Returns the total cost of performing a Filter operation.
 
template<typename PlanTable >
double calculate_join_cost (const QueryGraph &G, const PlanTable &PT, const CardinalityEstimator &CE, Subproblem left, Subproblem right, const cnf::CNF &condition) const
 Returns the total cost of performing a Join operation.
 
template<typename PlanTable >
double calculate_grouping_cost (const QueryGraph &G, const PlanTable &PT, const CardinalityEstimator &CE, Subproblem sub, const std::vector< const ast::Expr * > &group_by) const
 Returns the total cost of performing a Grouping operation.
 

Detailed Description

Definition at line 37 of file CostFunction.hpp.

Member Typedef Documentation

◆ Subproblem

Definition at line 41 of file CostFunction.hpp.

Constructor & Destructor Documentation

◆ CostFunction()

m::CostFunction::CostFunction ( )
inline

Definition at line 44 of file CostFunction.hpp.

◆ ~CostFunction()

virtual m::CostFunction::~CostFunction ( )
virtualdefault

Member Function Documentation

◆ calculate_filter_cost()

template<typename PlanTable >
double m::CostFunction::calculate_filter_cost ( const QueryGraph G,
const PlanTable &  PT,
const CardinalityEstimator CE,
Subproblem  sub,
const cnf::CNF condition 
) const
inline

Returns the total cost of performing a Filter operation.

Definition at line 53 of file CostFunction.hpp.

◆ calculate_grouping_cost()

template<typename PlanTable >
double m::CostFunction::calculate_grouping_cost ( const QueryGraph G,
const PlanTable &  PT,
const CardinalityEstimator CE,
Subproblem  sub,
const std::vector< const ast::Expr * > &  group_by 
) const
inline

Returns the total cost of performing a Grouping operation.

Definition at line 70 of file CostFunction.hpp.

◆ calculate_join_cost()

template<typename PlanTable >
double m::CostFunction::calculate_join_cost ( const QueryGraph G,
const PlanTable &  PT,
const CardinalityEstimator CE,
Subproblem  left,
Subproblem  right,
const cnf::CNF condition 
) const
inline

The documentation for this struct was generated from the following file: