Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Material Aggregation
branch: master

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
data
.gitignore
Makefile
README
index.cpp
index.h
main.cpp
sample.data
table.cpp
table.h
trace.h

README

Material Aggregation
--------------------

This is a small sample project to simulate diverse access patterns
either on a column store or a row store. The most important class is
the Table class. It provides simple methods to access a certain value
at a given position ( col, row).

How To Use?
-----------

1) compile the program using 'make'
2) run the prorgam using the ./main data/generated_data_small.csv 10 10 data/generated_data_small_index.csv


Aggregation Results
-------------------

When using the sample data the following results are corect:

1) Complete aggregation: 503
2) Agg by material number 0: 133


Genrate Data
-----------

In the data subfolder is a generator script that will generate the
necessary data to execute all tasks. The distribution of this data is
close to real customer data. 

To generate data you will need the following parameters:

   - number of rows 
   - number of distinct values ( defines the number of distinct values each fill column may have)
   - number of columns ( number of total columns including the material_id and amount column)

The output are two files one pipe ("|") separated file in this order

Data file:

     material_id | amount | [random_col]+

Index file:

     material_id | (row1,...,rown)

The index file is an inverted index meaning that it is split into two
parts, the first column identifies the material number and the second
part identifies all rows where this material number is used.
Something went wrong with that request. Please try again.