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

The dataloader which allows zipf distribution of key, value, event time and arrival skewness. More...

#include <TestBench/ZipfDataLoader.h>

Inheritance diagram for OoOJoin::ZipfDataLoader:
Collaboration diagram for OoOJoin::ZipfDataLoader:

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)
 
vector< OoOJoin::TrackTuplePtrgenTuples (vector< keyType > keyS, vector< valueType > valueS, vector< tsType > eventS, vector< tsType > arrivalS)
 
void genKey ()
 generate the vector of key More...
 
void genValue ()
 enerate the vector of key More...
 
void genEvent ()
 generate the vector of event More...
 
void genArrival ()
 generate the vector of arrival More...
 
void genFinal ()
 generate the final result of s and r
 

Protected Attributes

tsType windowLenMs
 
tsType timeStepUs
 
tsType watermarkTimeMs
 
tsType maxArrivalSkewMs
 
tsType eventRateKTps
 
uint64_t zipfDataLoader_zipfKey
 
uint64_t zipfDataLoader_zipfValue
 
uint64_t zipfDataLoader_zipfEvent
 
uint64_t zipfDataLoader_zipfSkew
 
vector< keyTypekeyS
 
vector< keyTypekeyR
 
vector< valueTypevalueS
 
vector< valueTypevalueR
 
vector< tsTypeeventS
 
vector< tsTypeeventR
 
vector< tsTypearrivalS
 
vector< tsTypearrivalR
 
size_t testSize
 
size_t keyRange
 
size_t valueRange
 
double zipfDataLoader_zipfKeyFactor
 
double zipfDataLoader_zipfValueFactor
 
double zipfDataLoader_zipfEventFactor
 
double zipfDataLoader_zipfSkewFactor
 
MicroDataSet md
 

Detailed Description

The dataloader which allows zipf distribution of key, value, event time and arrival skewness.

Note
:
  • Must have a global config by setConfig
  • Can also have a modification config by
Default behavior
  • create
  • setConfig and setModConfig (optional), generate R and S internally
  • call getTupleVectorS/R
require configs:
  • zipfDataLoader_zipfKey U64, in key, 1 for zipf, 0 for random
  • zipfDataLoader_zipfValue U64, in value, 1 for zipf, 0 for random
  • zipfDataLoader_zipfEvent U64, in event time, 1 for zipf, 0 for random
  • zipfDataLoader_zipfSkew U64, in arrival skewness, 1 for zipf, 0 for random
  • zipfDataLoader_zipfKeyFactor Double, in key,0~1
  • zipfDataLoader_zipfValueFactor Double, in value, 0~1
  • zipfDataLoader_zipfEventFactor Double, in event time, 0~1
  • zipfDataLoader_zipfSkewFactor Double, in event time, 0~1
  • windowLenMs U64 The real world window length in ms
  • timeStepUs U64 The simulation step in us
  • 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
  • valueRange U64 The range of value

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