OoOJoin  0.0.1
The next generation of out-of-order join operator
OoOJoin::RandomDataLoader Class Reference

The dataloader which produces random key, random value and random skewness. More...

#include <TestBench/RandomDataLoader.h>

Inheritance diagram for OoOJoin::RandomDataLoader:
Collaboration diagram for OoOJoin::RandomDataLoader:

Public Member Functions

virtual bool setConfig (ConfigMapPtr cfg)
 Set the GLOBAL config map related to this loader. More...
 
virtual bool setModConfig (ConfigMapPtr cfg)
 Set the modification config map related to this loader. More...
 
virtual vector< TrackTuplePtrgetTupleVectorS ()
 get the vector of s tuple More...
 
virtual vector< TrackTuplePtrgetTupleVectorR ()
 get the vector of R tuple More...
 

Public Attributes

ConfigMapPtr cfgGlobal
 
vector< TrackTuplePtrsTuple
 
vector< TrackTuplePtrrTuple
 

Protected Member Functions

vector< tsTypegenArrivalTime (vector< tsType > eventTime, vector< tsType > arrivalSkew)
 
void bubble_sort (vector< OoOJoin::TrackTuplePtr > &arr)
 
vector< OoOJoin::TrackTuplePtrgenTuples (vector< keyType > keyS, vector< tsType > eventS, vector< tsType > arrivalS)
 
vector< TrackTuplePtrgenTuplesSmooth (size_t testSize, uint64_t keyRange, uint64_t rateKtps, uint64_t groupUnit, uint64_t maxSkewUs, uint64_t seed=999)
 

Protected Attributes

tsType windowLenMs
 
tsType timeStepUs
 
tsType watermarkTimeMs
 
tsType maxArrivalSkewMs
 
tsType eventRateKTps
 

Detailed Description

The dataloader which produces random key, random value and random skewness.

Note
: Default behavior
  • create
  • setConfig and setModConfig (optional), generate R and S internally
  • call getTupleVectorS/R and getSizeS/R;
require configs:
  • "windowLenMs" U64 The real world window length in ms
  • "timeStepUs" U64 The simulation step in us
  • "watermarkTimeMs" U64 The real world watermark generation period in ms
  • "maxArrivalSkewMs" U64 The maximum real-world arrival skewness in ms
  • "eventRateKTps" U64 The real-world rate of spawn event, in KTuples/s
  • "keyRange" U64 The range of Key

Member Function Documentation

◆ getTupleVectorR()

vector< TrackTuplePtr > RandomDataLoader::getTupleVectorR ( )
virtual

get the vector of R tuple

Returns
the vector

Reimplemented from OoOJoin::AbstractDataLoader.

◆ getTupleVectorS()

vector< TrackTuplePtr > RandomDataLoader::getTupleVectorS ( )
virtual

get the vector of s tuple

Returns
the vector

Reimplemented from OoOJoin::AbstractDataLoader.

◆ setConfig()

bool RandomDataLoader::setConfig ( ConfigMapPtr  cfg)
virtual

Set the GLOBAL config map related to this loader.

Parameters
cfgThe config map
Returns
bool whether the config is successfully set

Reimplemented from OoOJoin::AbstractDataLoader.

◆ setModConfig()

virtual bool OoOJoin::RandomDataLoader::setModConfig ( ConfigMapPtr  cfg)
inlinevirtual

Set the modification config map related to this loader.

Parameters
cfgThe config map
Returns
bool whether the config is successfully set

Reimplemented from OoOJoin::AbstractDataLoader.


The documentation for this class was generated from the following files: