Skip to content

mprammer/hustle

 
 

Repository files navigation

Hustle

Hustle

Hustle is an efficient data platform, organized as a collection of data processing kernels, based on a micro services architecture, serving heterogeneous application query languages that map to core relational algebraic DSL.

Building blocks

Hustle is built on Apache Arrow.

Coding Guidelines

We follow these guidelines for development.

Build Hustle

User on MacOS shall install homebrew before running the following scripts.

To install the required packages for Hustle use the following scripts:

./install_requirements.sh
./install_arrow.sh

The scripts will install g++9, cmake 3.15 and Apache Arrow.

Then use cmake to build Hustle:

mkdir build
cd build
cmake -D CMAKE_BUILD_TYPE=RELEASE .. 
make -j all  

To run the test go into the build directory and use:

ctest --output-on-failure

Run Benchmark

You can use the following commands to run the ssb benchmark, (before running the below commands make sure you have built the executable from the source files using the steps provided in the previous section).

To generate the ssb benchmark data,

sh ./scripts/ssb/gen_benchmark_data.sh ${SCALE_FACTOR}

(Usually scale factor can be 1 or 10).

To run the ssb benchmark,

sh ./scripts/ssb/run_benchmark.sh ssb [arrow_aggregate | hash_aggregate]

To run the tatp benchmark,

sh ./scripts/tatp/run_benchmark.sh 

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 94.7%
  • C 2.6%
  • CMake 1.6%
  • Other 1.1%