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 <AbstractPartitionComp.h>
Public Member Functions | |
virtual std::string | getComputationType () override |
virtual ComputationTypeID | getComputationTypeID () override |
std::string | getIthInputType (int i) override |
int | getNumInputs () override |
virtual std::string | getOutputType () override |
std::string | toTCAPString (std::vector< InputTupleSetSpecifier > &inputTupleSets, int computationLabel, std::string &outputTupleSetName, std::vector< std::string > &outputColumnNames, std::string &addedOutputColumnName) override |
virtual std::string | toTCAPString (std::string inputTupleSetName, std::vector< std::string > &inputColumnNames, std::vector< std::string > &inputColumnsToApply, std::vector< std::string > &childrenLambdaNames, int computationLabel, std::string &outputTupleSetName, std::vector< std::string > &outputColumnNames, std::string &addedOutputColumnName, std::string &myLambdaName)=0 |
virtual void | setOutput (std::string dbName, std::string setName) override |
virtual void | setBatchSize (int batchSize) override |
virtual std::string | getDatabaseName () override |
std::string | getSetName () override |
virtual ComputeSourcePtr | getComputeSource (TupleSpec &outputScheme, ComputePlan &plan) override |
virtual ComputeSinkPtr | getComputeSink (TupleSpec &consumeMe, TupleSpec &projection, ComputePlan &plan) override |
bool | needsMaterializeOutput () override |
void | setNumPartitions (int numPartitions) |
int | getNumPartitions () |
void | setNumNodes (int numNodes) |
int | getNumNodes () |
Public Member Functions inherited from pdb::Computation | |
virtual void | extractLambdas (std::map< std::string, GenericLambdaObjectPtr > &returnVal) |
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) |
bool | hasInput () |
Handle< Computation > & | getIthInput (int i) const |
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 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) |
Protected Attributes | |
bool | materializeSelectionOut = false |
int | numPartitions = 16 |
int | numNodes = 2 |
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) |
Definition at line 29 of file AbstractPartitionComp.h.
|
inlineoverridevirtual |
Implements pdb::Computation.
Reimplemented in pdb::PartitionCompBase< KeyClass, ValueClass >, and pdb::PartitionTransformationCompBase< KeyClass, ValueClass >.
Definition at line 37 of file AbstractPartitionComp.h.
|
inlineoverridevirtual |
Implements pdb::Computation.
Reimplemented in pdb::PartitionCompBase< KeyClass, ValueClass >, and pdb::PartitionTransformationCompBase< KeyClass, ValueClass >.
Definition at line 44 of file AbstractPartitionComp.h.
|
inlineoverridevirtual |
Sink to write partition output
consumeMe | the tuple set scheme of the compute sink |
projection | the tuple set scheme of the projection |
plan | the computation plan |
Reimplemented from pdb::Computation.
Reimplemented in pdb::PartitionCompBase< KeyClass, ValueClass >, and pdb::PartitionTransformationCompBase< KeyClass, ValueClass >.
Definition at line 173 of file AbstractPartitionComp.h.
|
inlineoverridevirtual |
source for consumer to read selection output, which has been written to a user set
outputScheme | the tuple set scheme of the compute source |
plan | the computation plan |
Reimplemented from pdb::Computation.
Reimplemented in pdb::PartitionCompBase< KeyClass, ValueClass >, and pdb::PartitionTransformationCompBase< KeyClass, ValueClass >.
Definition at line 162 of file AbstractPartitionComp.h.
|
inlineoverridevirtual |
Reimplemented from pdb::Computation.
Reimplemented in pdb::PartitionCompBase< KeyClass, ValueClass >, and pdb::PartitionTransformationCompBase< KeyClass, ValueClass >.
Definition at line 145 of file AbstractPartitionComp.h.
|
inlineoverridevirtual |
i | the index of the input element that we want to know the type |
Implements pdb::Computation.
Definition at line 52 of file AbstractPartitionComp.h.
|
inlineoverridevirtual |
Implements pdb::Computation.
Definition at line 63 of file AbstractPartitionComp.h.
|
inline |
Definition at line 212 of file AbstractPartitionComp.h.
|
inline |
Definition at line 198 of file AbstractPartitionComp.h.
|
inlineoverridevirtual |
Implements pdb::Computation.
Reimplemented in pdb::PartitionCompBase< KeyClass, ValueClass >, and pdb::PartitionTransformationCompBase< KeyClass, ValueClass >.
Definition at line 70 of file AbstractPartitionComp.h.
|
inlineoverridevirtual |
Reimplemented from pdb::Computation.
Reimplemented in pdb::PartitionCompBase< KeyClass, ValueClass >, and pdb::PartitionTransformationCompBase< KeyClass, ValueClass >.
Definition at line 152 of file AbstractPartitionComp.h.
|
inlineoverridevirtual |
Reimplemented from pdb::Computation.
Definition at line 183 of file AbstractPartitionComp.h.
|
inlineoverridevirtual |
to set the batch size for this computation
batchSize | the size of processing batches for this computation |
Reimplemented from pdb::Computation.
Reimplemented in pdb::PartitionCompBase< KeyClass, ValueClass >, and pdb::PartitionTransformationCompBase< KeyClass, ValueClass >.
Definition at line 140 of file AbstractPartitionComp.h.
|
inline |
numNodes | to set the number of nodes for this computation |
Definition at line 205 of file AbstractPartitionComp.h.
|
inline |
numPartitions | to set the number of partitions for this computation |
Definition at line 191 of file AbstractPartitionComp.h.
|
inlineoverridevirtual |
to specify the output set for this computation
dbName | the name of the database |
setName | the name of the set |
Reimplemented from pdb::Computation.
Reimplemented in pdb::PartitionCompBase< KeyClass, ValueClass >, and pdb::PartitionTransformationCompBase< KeyClass, ValueClass >.
Definition at line 133 of file AbstractPartitionComp.h.
|
inlineoverridevirtual |
below function implements the interface for parsing computation into a TCAP string
inputTupleSets | identifiers to input tuple sets |
computationLabel | the sequence number of this computation |
outputTupleSetName | the name of the tuple set that is resulted from this computation |
outputColumnNames | the column names in the tuple set that is resulted from this computation |
addedOutputColumnName | the appended column name in the tuple set that is resulted from this computation |
Implements pdb::Computation.
Definition at line 83 of file AbstractPartitionComp.h.
|
pure virtual |
inputTupleSetName | identifiers to input tuple sets |
inputColumnNames | the sequence number of this computation |
inputColumnsToApply | the names of the input columns in the input tuple sets that will be used in the computation |
childrenLambdaNames | the extracted lambda names for this TCAP |
computationLabel | the sequence number of this computation |
outputTupleSetName | the name of the output tuple set that is resulted from this computation |
outputColumnNames | the column names of the output tuple set that is resulted from this computation |
addedOutputColumnName | the name of the newly appended column |
myLambdaName |
Implemented in pdb::PartitionCompBase< KeyClass, ValueClass >, and pdb::PartitionTransformationCompBase< KeyClass, ValueClass >.
|
protected |
Definition at line 218 of file AbstractPartitionComp.h.
|
protected |
Definition at line 220 of file AbstractPartitionComp.h.
|
protected |
Definition at line 219 of file AbstractPartitionComp.h.