FastLanes File Format
Project description
FastLanes: A Next-Generation Columnar File Format
FastLanes is like Parquet with 40% better compression and 40× faster decoding, making it the ideal choice for high-throughput analytics workloads.
Getting Started
Python
import pyfastlanes
# Connect to FastLanes
conn = pyfastlanes.connect()
# Convert a CSV directory to FastLanes format
conn.inline_footer().read_csv("path/to/csv_dir").to_fls("data.fls")
# Read back and write to CSV
reader = conn.read_fls("data.fls")
reader.to_csv("decoded.csv")
C++
Add FastLanes as a dependency via CMake:
include(FetchContent)
FetchContent_Declare(
googletest
GIT_REPOSITORY https://github.com/google/googletest.git
GIT_TAG e2239ee6043f73722e7aa812a459f54a28552929 # release-1.11.0
)
set(gtest_force_shared_crt ON CACHE BOOL "" FORCE)
FetchContent_MakeAvailable(googletest)
Example usage:
#include "fastlanes.hpp"
int main() {
fastlanes::Connection conn;
conn.read_csv("data/csv_dir").to_fls("data.fls");
auto reader = fastlanes::Connection().read_fls("data.fls");
reader->to_csv("decoded.csv");
return EXIT_SUCCESS;
}
Coming Soon
- CUDA support for FastLanes CUDA reader
- Rust bindings for seamless integration in Rust projects
Publications
-
Azim Afroozeh & Peter Boncz, “The FastLanes Compression Layout: Decoding > 100 Billion Integers per Second with Scalar Code,” PVLDB, 16(9): 2132–2144, May 2023
-
Azim Afroozeh, Lotte Felius & Peter Boncz, “Accelerating GPU Data Processing Using FastLanes Compression,” DaMoN ’24, Proceedings of the 20th International Workshop on Data Management on New Hardware, Santiago, Chile, June 2024
How to Cite
If you use FastLanes in your research or projects, please cite:
@article{afroozeh2023fastlanes,
author = {Afroozeh, Azim and Boncz, Peter},
title = {The FastLanes Compression Layout: Decoding > 100 Billion Integers per Second with Scalar Code},
journal = {Proceedings of the VLDB Endowment},
volume = {16},
number = {9},
pages = {2132--2144},
month = may,
year = {2023},
publisher = {VLDB Endowment}
}
@inproceedings{afroozeh2024accelerating,
author = {Afroozeh, Azim and Felius, Lotte and Boncz, Peter},
title = {Accelerating GPU Data Processing Using FastLanes Compression},
booktitle = {DaMoN ’24: Proceedings of the 20th International Workshop on Data Management on New Hardware},
pages = {1--11},
month = jun,
year = {2024},
organization = {ACM},
doi = {10.1145/3662010.3663450}
}
License
This project is released under the MIT License.
Join Our Community
Come discuss FastLanes, share feedback, and help shape the future of data formats on Discord:
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file pyfastlanes-0.1.3.post7.tar.gz.
File metadata
- Download URL: pyfastlanes-0.1.3.post7.tar.gz
- Upload date:
- Size: 21.6 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a2cade79960fda2f4638307a1cbbe5b1411f61b10ef88bfb7e571dbf59791ce5
|
|
| MD5 |
49f206abc10d67024a8d10cd8af6c0ab
|
|
| BLAKE2b-256 |
d39e4ad4f8d8946b449c52f66e2aa9e42eedcc0ef1953f5fee70b5fa20438735
|
File details
Details for the file pyfastlanes-0.1.3.post7-cp313-cp313-macosx_15_0_arm64.whl.
File metadata
- Download URL: pyfastlanes-0.1.3.post7-cp313-cp313-macosx_15_0_arm64.whl
- Upload date:
- Size: 31.2 MB
- Tags: CPython 3.13, macOS 15.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0f34f35af366ad6686d264633f69337220782aea9aeb3a546be4b3f0edb0c296
|
|
| MD5 |
fc09bdadee29be639141bc66e659f622
|
|
| BLAKE2b-256 |
0066c014f6ce9c60db61b334c9b85e051a6bfc108c00dcde6180132167a553a9
|