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 <AbstractJoinComp.h>
Public Member Functions | |
virtual ComputeExecutorPtr | getExecutor (bool needToSwapAtts, TupleSpec &hashedInputSchema, TupleSpec &pipelinedInputSchema, TupleSpec &pipelinedAttsToOperateOn, TupleSpec &pipelinedAttsToIncludeInOutput, ComputeInfoPtr arg)=0 |
virtual ComputeExecutorPtr | getExecutor (bool needToSwapAtts, TupleSpec &hashedInputSchema, TupleSpec &pipelinedInputSchema, TupleSpec &pipelinedAttsToOperateOn, TupleSpec &pipelinedAttsToIncludeInOutput)=0 |
ComputationTypeID | getComputationTypeID () override |
Public Member Functions inherited from pdb::Computation | |
virtual void | extractLambdas (std::map< std::string, GenericLambdaObjectPtr > &returnVal) |
virtual ComputeSourcePtr | getComputeSource (TupleSpec &produceMe, ComputePlan &plan) |
virtual ComputeSinkPtr | getComputeSink (TupleSpec &consumeMe, TupleSpec &projection, ComputePlan &plan) |
virtual ComputeSinkPtr | getComputeSink (TupleSpec &consumeMe, TupleSpec &whichAttsToOpOn, TupleSpec &projection, ComputePlan &plan) |
virtual SinkMergerPtr | getSinkMerger (TupleSpec &consumeMe, TupleSpec &projection, ComputePlan &plan) |
virtual SinkMergerPtr | getSinkMerger (TupleSpec &consumeMe, TupleSpec &whichAttsToOpOn, TupleSpec &projection, ComputePlan &plan) |
virtual SinkShufflerPtr | getSinkShuffler (TupleSpec &consumeMe, TupleSpec &projection, ComputePlan &plan) |
JiaNote: add below interface for shuffling multiple join map sinks for hash partitioned join. More... | |
virtual SinkShufflerPtr | getSinkShuffler (TupleSpec &consumeMe, TupleSpec &whichAttsToOpOn, TupleSpec &projection, ComputePlan &plan) |
virtual std::string | getComputationType ()=0 |
virtual std::string | toTCAPString (std::vector< InputTupleSetSpecifier > &inputTupleSets, int computationLabel, std::string &outputTupleSetName, std::vector< std::string > &outputColumnNames, std::string &addedOutputColumnName)=0 |
virtual std::string | getIthInputType (int i)=0 |
bool | hasInput () |
Handle< Computation > & | getIthInput (int i) const |
virtual int | getNumInputs ()=0 |
virtual std::string | getOutputType ()=0 |
int | getNumConsumers () |
void | setNumConsumers (int numConsumers) |
bool | setInput (Handle< Computation > toMe) |
bool | setInput (int whichSlot, Handle< Computation > toMe) |
bool | isTraversed () |
void | setTraversed (bool traversed) |
std::string | getOutputTupleSetName () |
void | setOutputTupleSetName (std::string outputTupleSetName) |
std::string | getOutputColumnToApply () |
void | setOutputColumnToApply (std::string outputColumnToApply) |
virtual void | setOutput (std::string dbName, std::string setName) |
virtual std::string | getDatabaseName () |
virtual std::string | getSetName () |
virtual bool | needsMaterializeOutput () |
virtual void | setBatchSize (int batchSize) |
virtual bool | isUsingCombiner () |
virtual void | setUsingCombiner (bool useCombinerOrNot) |
void | setAllocatorPolicy (AllocatorPolicy myPolicy) |
void | setObjectPolicy (ObjectPolicy myPolicy) |
AllocatorPolicy | getAllocatorPolicy () |
ObjectPolicy | getObjectPolicy () |
virtual void | setCollectAsMap (bool collectAsMapOrNot) |
virtual bool | isCollectAsMap () |
virtual int | getNumNodesToCollect () |
virtual void | setNumNodesToCollect (int numNodesToCollect) |
Public Member Functions inherited from pdb::Object | |
void | setVTablePtr (void *setToMe) |
void * | getVTablePtr () |
virtual void | setUpAndCopyFrom (void *target, void *source) const |
virtual void | deleteObject (void *deleteMe) |
virtual size_t | getSize (void *ofMe) |
Additional Inherited Members | |
Static Public Member Functions inherited from pdb::Object | |
static void * | operator new (size_t sz, const std::nothrow_t &tag) |
static void * | operator new (size_t sz) |
static void | operator delete (void *me) |
static void * | operator new (std::size_t count, void *ptr) |
This class defines the interfaces for AggregateComp This class is used in backend when type information is unknown
Definition at line 28 of file AbstractJoinComp.h.
|
inlineoverridevirtual |
Used to return the type if of this computation
Implements pdb::Computation.
Reimplemented in pdb::JoinCompBase< Out, In1, In2, Rest >, and pdb::JoinCompBase< Out, In1, In2, Args... >.
Definition at line 77 of file AbstractJoinComp.h.
|
pure virtual |
Gets an execute that can run a scan join...
needToSwapAtts | - is true if the atts that are currently stored in the hash table need to come SECOND in the output tuple sets... |
hashedInputSchema | - hashedInputSchema tells us the schema for the attributes that are currently stored in the hash table... |
pipelinedInputSchema | - tells us the schema for the attributes that will be coming through the pipeline... |
pipelinedAttsToOperateOn | - is the identity of the hash attribute... |
pipelinedAttsToIncludeInOutput | - tells us the set of attributes that are coming through the pipeline that we actually have to write to the output stream |
arg | - parameters that are sent into a pipeline when it is built |
Implemented in pdb::JoinCompBase< Out, In1, In2, Rest >, and pdb::JoinCompBase< Out, In1, In2, Args... >.
|
pure virtual |
Gets an execute that can run a scan join...
needToSwapAtts | - is true if the atts that are currently stored in the hash table need to come SECOND in the output tuple sets... |
hashedInputSchema | - hashedInputSchema tells us the schema for the attributes that are currently stored in the hash table... |
pipelinedInputSchema | - tells us the schema for the attributes that will be coming through the pipeline... |
pipelinedAttsToOperateOn | - is the identity of the hash attribute... |
pipelinedAttsToIncludeInOutput | - tells us the set of attributes that are coming through the pipeline that we actually have to write to the output stream |
arg | - parameters that are sent into a pipeline when it is built |
Implemented in pdb::JoinCompBase< Out, In1, In2, Rest >, and pdb::JoinCompBase< Out, In1, In2, Args... >.