Skip to content
This repository has been archived by the owner on Jun 23, 2022. It is now read-only.

chenzongxiong/streambox

Repository files navigation

/*

  • All the pre-existing code and data are subject to their own licenses.

  • All the programs resulted from this project are under FreeBSD license.

  • Copyright (c) 2016-2017, Purdue University

  • All rights reserved.

  • Redistribution and use in source and binary forms, with or without

  • modification, are permitted provided that the following conditions are met:

    1. Redistributions of source code must retain the above copyright notice,
  • this list of conditions and the following disclaimer.

    1. Redistributions in binary form must reproduce the above copyright notice,
  • this list of conditions and the following disclaimer in the documentation

  • and/or other materials provided with the distribution.

  • THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"

  • AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE

  • IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE

  • ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE

  • LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR

  • CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF

  • SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS

  • INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN

  • CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)

  • ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF

  • THE POSSIBILITY OF SUCH DAMAGE.

  • The views and conclusions contained in the software and documentation are

  • those of the authors and should not be interpreted as representing official

  • policies, either expressed or implied, of Purdue University. */

  1. Overview: Stream analytics on real-time events has an insatiable demand for throughput and latency. Its performance on a single machine is central to meeting this demand, even in a distributed system. StreamBox is a novel stream processing engine that:
  • Exploits the parallelism and memory hierarchies in modern multicore hardware.
  • Supports out-of-order data processing.
  • Scales to a large number of cores.
  • Achieves throughput on-par with distributed engines on medium-size clusters.
  • Delivers latencies in the tens of milliseconds, which are 20× shorter than other large-scale streaming engines.
  • Follows the Google dataflow (Apache Beam) programming model.
  1. Build & Run:

2.1 Dependencies /Ubuntu 16.04/ $sudo apt-get install g++
libtbb-dev
automake
autoconf
autoconf-archive
libtool
libboost-all-dev
libevent-dev
libdouble-conversion-dev
libgoogle-glog-dev
libgflags-dev
liblz4-dev
liblzma-dev
libsnappy-dev
make
zlib1g-dev
binutils-dev
libjemalloc-dev
libssl-dev

2.2 Set compilation parameters Edit /path/to/streambox/CMakeLists.txt

2.3 Build applications $cd /path/to/streambox/ $/usr/bin/cmake -DCMAKE_BUILD_TYPE=Release -G "CodeBlocks - Unix Makefiles"
/path/to/streambox /Build wc/ $make test-wc.bin

2.4 Run test-wc $./test-wc.bin

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published