AllianceDB  0.0.1
AllianceDB is an open-source suite, including benchmarks and libs for evaluating and improving stream operation algorithms on modern hardwares.
Introduction

The AllianceDB offers a wide range of stream join algorithms, supporting both inter and intra window join.

Major Parts

Three major parts are composed to achieve ultra-fast stream window join, and they can be found in corresponding named folder under include or src

JoinAlgo

Here are specific algorithms to eventually deal with stream join, including hash or radix. All of these algos assume there is no window, in another word, they achieve the intra-window join. Please refer to the The specific join algorithms module.

JoinProcessor

Here is the middle layer of the whole stream window join, i.e., to bridge the "window" and "join". One JoinProcessor may either eagerly do stream join, or just accumulate the tuples and evoke JoinAlgo for lazy join. JoinProcessors are managed by upper windowslider. Please refer to the JoinProcessors module.

WindowSlider

Here is the top layer on all. Typically, the WindowSliders will:

  • Directly receive user input by feedTupleS/R
  • Globally manage the sliding window
  • Pass tuple to and control its JoinProcessors.

Please find them in WindowSliders module

Other Parts

Besides the 3 above, Aliance DB has other parts to support its work, they are:

Common

Common functions, data types for all aliance db component, and they are especially designed for aliance db. Please refer to Common Datastructure and Functions module.

Utils

Similar to Common, but they are not specialized for aliance db. On the contrary, they may be shared by other InteliStream programs or third-party programs. Please refer to Shared Utils with other Intelli Stream programs module.