vaexio/vaex

Out-of-Core hybrid Apache Arrow/NumPy DataFrame for Python, ML, visualization and exploration of big tabular data at a billion rows per second 🚀

View on GitHub ↗Jump to charts ↓

Summary Information

Updated 2 minutes ago
Added to GitGenius on September 7th, 2026
Created on September 27th, 2014
Open Issues & Pull Requests: 552 (+0)
GitHub issues: Enabled
Number of forks: 599
Total Stargazers: 8,509 (+0)
Total Subscribers: 137 (+0)

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Issue API getrepoissuespagesummary failed: 429 Rate limit exceeded. Please try again later.

Detailed Description

Vaex is an out-of-core DataFrame library for Python that processes large tabular datasets without loading them entirely into memory.

Vaex solves the problem of analyzing datasets too large to fit in RAM by using memory mapping, lazy evaluation, and a zero-copy policy. It reads data directly from disk using Apache Arrow and HDF5 formats, performing computations only when results are needed. The library calculates statistics like mean, sum, and standard deviation across N-dimensional grids and supports interactive visualization through histograms, density plots, and 3D volume rendering. Its expression system allows lazy data transformations without materializing intermediate results, and it implements parallelized groupby and join operations that avoid copying data unnecessarily.

Vaex suits data exploration and analysis workflows where dataset size makes traditional in-memory tools impractical. It works well for interactive analysis in Jupyter notebooks and dashboards through Voila integration, and includes machine learning capabilities without requiring explicit pipeline construction. Teams working with billion-row datasets who need subsecond query performance on commodity hardware should consider it. The tool is positioned as an alternative to Pandas for out-of-core scenarios, offering memory-mapped file access and lazy computation where Pandas would require distributed systems or data sampling.

The project shows consistent development activity with regular updates to core functionality. Maintenance spans multiple areas including performance optimization of groupby and join operations, expansion of supported data formats and remote data access patterns, and integration improvements with the Jupyter ecosystem. The codebase receives ongoing refinement across its expression evaluation system and memory-mapped file handling.