Skip to content

johnpaparrizos/buff

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code
This branch is 1 commit behind Tranway1:master.

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
 
 

BUFF

Rust implementation of float compression for VLDB 2021 paper Decomposed Bounded Floats for Fast Compression and Queries video. All BUFF-related implementations are included in the database folder. As BUFF query relies on bit-vector operations, we included a popular bit-vector implementation roaring-rs bitmap and our own implementation bit-vec.

Compile

This compile uses the cargo nightly channel.

Quick start:

cd ./database
cargo +nightly run --release  --package buff --bin comp_profiler ./data/randomwalkdatasample1k-1k buff-simd 10000 1.1509

The code sample above parses a CSV file, encodes file with BUFF, and executes equality, range, aggregation, materialization queries on BUFF encoded data chunk with SIMD enabled. To use the scalar version, please replace "buff-simd" with "buff".

BUFF highlights

BUFF not only reduces storage requirements but also enhances query performance:

  • Fast compression throughput and better compression ratio.
  • Query-friendly compression (fast filtering and aggregation execution).
  • Adaptive SIMD acceleration.
  • Supporting materialization with variable precision as requested.
  • Approximate query processing.
  • Outlier handling.

About

rust implementation for BUFF: decomposed bounded floats for fast compression and queries

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Rust 96.5%
  • Shell 2.4%
  • Python 1.1%