A platform for high-performance distributed tool and library development written in C++. It can be deployed in two different cluster modes: standalone or distributed. API for v0.5.0, released on June 13, 2018.
|
#include <AdvancedPhysicalNodeFactory.h>
Public Member Functions | |
AdvancedPhysicalNodeFactory (const string &jobId, const Handle< ComputePlan > &computePlan, const ConfigurationPtr &conf) | |
vector< AbstractPhysicalNodePtr > | generateAnalyzerGraph (std::vector< AtomicComputationPtr > sources) override |
Public Member Functions inherited from pdb::AbstractPhysicalNodeFactory | |
AbstractPhysicalNodeFactory (const Handle< ComputePlan > &computePlan) | |
Protected Member Functions | |
void | transverseTCAPGraph (AtomicComputationPtr curNode) |
void | setConsumers (shared_ptr< AdvancedPhysicalAbstractPipe > node) |
void | connectThePipes () |
template<class T > | |
void | createPhysicalPipeline () |
Protected Attributes | |
std::string | jobId |
size_t | currentNodeIndex |
ConfigurationPtr | conf |
std::set< AtomicComputationPtr > | visitedNodes |
std::vector< AtomicComputationPtr > | currentPipe |
std::map< std::string, AdvancedPhysicalPipelineNodePtr > | physicalNodes |
std::vector < AbstractPhysicalNodePtr > | physicalSourceNodes |
std::map< std::string, AdvancedPhysicalPipelineNodePtr > | startsWith |
std::map< std::string, std::vector< std::string > > | consumedBy |
std::vector < AdvancedPhysicalPipelineNodePtr > | sources |
Protected Attributes inherited from pdb::AbstractPhysicalNodeFactory | |
Handle< ComputePlan > | computePlan |
LogicalPlanPtr | logicalPlan |
AtomicComputationList | computationGraph |
Definition at line 28 of file AdvancedPhysicalNodeFactory.h.
pdb::AdvancedPhysicalNodeFactory::AdvancedPhysicalNodeFactory | ( | const string & | jobId, |
const Handle< ComputePlan > & | computePlan, | ||
const ConfigurationPtr & | conf | ||
) |
Definition at line 26 of file AdvancedPhysicalNodeFactory.cc.
|
protected |
After we create all the pipes we we need to connect them to create a graph consisting of pipes
Definition at line 159 of file AdvancedPhysicalNodeFactory.cc.
|
inlineprotected |
This method creates a straight pipe and adds it to the physicalNodes
Definition at line 67 of file AdvancedPhysicalNodeFactory.h.
|
overridevirtual |
sources |
Implements pdb::AbstractPhysicalNodeFactory.
Definition at line 32 of file AdvancedPhysicalNodeFactory.cc.
|
protected |
This method updates the
node | - the node we are updating the consumedBy for |
Definition at line 134 of file AdvancedPhysicalNodeFactory.cc.
|
protected |
curNode |
Definition at line 60 of file AdvancedPhysicalNodeFactory.cc.
|
protected |
A configuration object for this cluster node
Definition at line 115 of file AdvancedPhysicalNodeFactory.h.
|
protected |
Maps each pipe to the list of atomic computations that consume it
Definition at line 146 of file AdvancedPhysicalNodeFactory.h.
|
protected |
The current node index
Definition at line 110 of file AdvancedPhysicalNodeFactory.h.
|
protected |
All the nodes that are in the current pipeline
Definition at line 125 of file AdvancedPhysicalNodeFactory.h.
|
protected |
The id of the job we are trying to generate a physical plan for
Definition at line 105 of file AdvancedPhysicalNodeFactory.h.
|
protected |
The physical nodes we created
Definition at line 130 of file AdvancedPhysicalNodeFactory.h.
|
protected |
Source physical nodes we created
Definition at line 135 of file AdvancedPhysicalNodeFactory.h.
|
protected |
All the source nodes we return them from the
Definition at line 151 of file AdvancedPhysicalNodeFactory.h.
|
protected |
Maps each pipe to the atomic computation it starts with. The key is the name of the atomic computation the value is the pipe
Definition at line 141 of file AdvancedPhysicalNodeFactory.h.
|
protected |
All the nodes we already visited
Definition at line 120 of file AdvancedPhysicalNodeFactory.h.