Code Monkey home page Code Monkey logo

openhufu's Introduction

OpenHuFu

OpenHuFu is a multi party computation framework used for data query benchmarks. It provides flexibility for researchers to quickly implement their algorithms. With its help, we can quickly take the experiment and get the performance of our algorithms.

Building OpenHuFu from Source

Prerequistes:

  • Linux
  • Java 11
  • Maven (version at least 3.5.2)

Run the following commands

git clone https://github.com/BUAA-BDA/OpenHuFu.git
cd OpenHuFu
./build/script/package.sh

Hu-Fu is now installed in release

//todo

Data Generate

  1. TCP-H
cd dataset/TPC-H V3.0.1/dbgen
cp makefile.suite makefile
make
cd scripts
bash generateData.sh dst x y #其中dst是目标文件夹,x是数据库数量(整数),y是每个数据库的数据量(整数,单位为G)

Running OpenHuFu (demo)

//todo

Data Query Language

  1. Plan
  2. DSL(Domain Specific Language): Easy to define and parse, takes time to design
  3. Function Call: Hard to describe query
  4. SQL

Query Type

  • Filter
  • Projection
  • Join: equi-join, theta join
  • Cross products
  • Aggregate(inc. group-by)
  • Limited window aggs
  • Distinct
  • Sort
  • Limit
  • Common table expressions
  • Spatial Query(TODO):
    • range query
    • knn
    • skyline

Evaluation Metrics

  • Communication Cost
  • Running Time
    • Data Access Time
    • Encryption Time
    • Decryption Time
    • Query Time

openhufu's People

Contributors

pan-x-c avatar cirnoooo123 avatar songy123 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.