AllianceDB  0.0.1
AllianceDB is an open-source suite, including benchmarks and libs for evaluating and improving stream operation algorithms on modern hardwares.
CellJoinJP.h
Go to the documentation of this file.
1 
2 //
3 // Created by tony on 2022/2/8.
4 //
5 
6 #ifndef _JOINPROCESSOR_CELLJOINJP_H_
7 #define _JOINPROCESSOR_CELLJOINJP_H_
8 #include <thread>
9 #include <Common/Types.h>
11 #include <barrier>
12 
13 #include <JoinProcessor/AbstractJP.h>
14 using namespace INTELLI;
15 using namespace std;
16 namespace INTELLI {
34 class CellJoinJP : public AbstractJP {
35  private:
36  /* data */
37  // struct timeval timeStart;
38 
39  // hashtable hashtableS,hashtableR;
40  protected:
41  virtual void inlineMain();
42 
43  WindowQueue windowQueueS;
44  WindowQueue windowQueueR;
45 
46  public:
47 
48  CellJoinJP() {
49 
50  }
57  void init(size_t sLen, size_t rLen, size_t _sysId) {
58  AbstractJP::init(sLen, rLen, _sysId);
59  windowQueueS = newWindowQueue(sLen);
60  windowQueueR = newWindowQueue(rLen);
61  }
62  /*SimpleHashJP(size_t sLen,size_t rLen,size_t _sysId)
63  {
64 
65  }*/
66  ~CellJoinJP() {
67 
68  }
69  //outside feed a window
74  void feedWindowS(WindowOfTuples ws) {
75  windowQueueS->push(ws);
76  }
81  void feedWindowR(WindowOfTuples wr) {
82  windowQueueR->push(wr);
83  }
84 
85 };
86 typedef std::shared_ptr<CellJoinJP> CellJoinJPPtr;
87 
92 }
93 #endif //HYBRID_JOIN_SRC_JOINPROCESSOR_SIMPLEHASHJP_H_
The basic class of join processor.
Definition: AbstractJP.h:38
virtual void init(size_t sLen, size_t rLen, size_t _sysId)
init the join processor with buffer/queue length and id
Definition: AbstractJP.h:119
The class of cell join join processor.
Definition: CellJoinJP.h:34
void feedWindowR(WindowOfTuples wr)
Directly feed a window of tuples.
Definition: CellJoinJP.h:81
virtual void inlineMain()
The 'main' function of AbstractP.
void feedWindowS(WindowOfTuples ws)
Directly feed a window of tuples.
Definition: CellJoinJP.h:74
void init(size_t sLen, size_t rLen, size_t _sysId)
init the join processor with buffer/queue length and id
Definition: CellJoinJP.h:57
Definition: DatasetTool.h:10