19 #ifndef PDB_ADVANCEDPHYSICALNODE_H
20 #define PDB_ADVANCEDPHYSICALNODE_H
75 std::vector<AdvancedPhysicalPipelineNodePtr> pipeline,
243 #endif //PDB_ADVANCEDPHYSICALNODE_H
virtual AdvancedPhysicalAbstractAlgorithmPtr selectOutputAlgorithm()=0
Handle< ComputePlan > computePlan
std::shared_ptr< Statistics > StatisticsPtr
virtual PhysicalOptimizerResultPtr chainMe(int nextStageID, const StatisticsPtr &stats, PhysicalOptimizerResultPtr previous)
const vector< AtomicComputationPtr > & getPipeComputations() const
vector< AtomicComputationPtr > pipeComputations
string getNodeIdentifier() override
AdvancedPhysicalPipelineNodePtr getAdvancedPhysicalNodeHandle()
AdvancedPhysicalAbstractAlgorithmPtr selectedAlgorithm
Handle< SetIdentifier > sourceSetIdentifier
virtual AdvancedPhysicalAbstractAlgorithmPtr propose(std::vector< AdvancedPhysicalAbstractAlgorithmPtr > algorithms)
LogicalPlanPtr logicalPlan
virtual PhysicalOptimizerResultPtr pipelineMe(int nextStageID, std::vector< AdvancedPhysicalPipelineNodePtr > pipeline, const StatisticsPtr &stats)
AdvancedPhysicalAbstractPipe(string &jobId, const Handle< ComputePlan > &computePlan, LogicalPlanPtr &logicalPlan, ConfigurationPtr &conf, vector< AtomicComputationPtr > &pipeComputations, size_t id)
std::shared_ptr< LogicalPlan > LogicalPlanPtr
void setSourceSetIdentifier(const Handle< SetIdentifier > &sourceSetIdentifier)
PhysicalOptimizerResultPtr analyze(const StatisticsPtr &stats, int nextStageID) override
double getCost(const StatisticsPtr &stats) override
std::unordered_map< std::string, std::string > getProbingHashSets()
AtomicComputationPtr getPipelineComputationAt(size_t idx)
virtual bool isExecuted()
bool isConsuming(Handle< SetIdentifier > &set) override
bool hasConsumers() override
virtual AdvancedPhysicalPipelineTypeID getType()=0
shared_ptr< Configuration > ConfigurationPtr
std::shared_ptr< struct AtomicComputation > AtomicComputationPtr
virtual std::vector< AdvancedPhysicalAbstractAlgorithmPtr > getPossibleAlgorithms(const StatisticsPtr &stats)=0
AdvancedPhysicalPipelineTypeID
std::shared_ptr< AdvancedPhysicalAbstractPipe > AdvancedPhysicalPipelineNodePtr
const Handle< SetIdentifier > & getSourceSetIdentifier() const
virtual bool isPipelinable(AdvancedPhysicalPipelineNodePtr node)
const bool isAggregating()
virtual bool isChainable()
std::shared_ptr< PhysicalOptimizerResult > PhysicalOptimizerResultPtr
const AdvancedPhysicalAbstractAlgorithmPtr & getSelectedAlgorithm() const
std::shared_ptr< AdvancedPhysicalAbstractAlgorithm > AdvancedPhysicalAbstractAlgorithmPtr