Skip to main content

High-Performance DataFrame Engine powered by Rust (The PardoX Project)

Project description

PardoX: The Hyper-Fast Data Engine 🚀

PyPI version License: MIT Python 3.8+ Powered By Rust

The Speed of Rust. The Simplicity of Python.

PardoX is a next-generation DataFrame engine designed for high-performance ETL and data analysis. It bridges the gap between low-level memory efficiency and high-level developer productivity by running a Rust Core wrapped in a lightweight Python SDK.

v0.1 Beta is now available! Supports Windows, Linux, and MacOS (Intel & Apple Silicon).


⚡ Why PardoX?

Traditional DataFrames (like Pandas) often struggle with memory overhead and single-threaded execution. PardoX introduces a Hybrid Architecture:

  • Core: Written in Rust for memory safety, multithreading, and SIMD (AVX2) optimizations.
  • Interface: Native Python bindings that feel familiar but run at compiled speeds.
  • Memory: Uses HyperBlock Architecture to manage data in contiguous chunks, minimizing fragmentation and maximizing CPU cache hits.

🔥 Key Features (v0.1)

1. Zero-Copy Ingestion

Load massive datasets in seconds. PardoX supports multithreaded CSV parsing and direct SQL ingestion without the overhead of Python objects.

2. Native Binary Format (.prdx)

Save and load your data instantly using the .prdx format.

  • Speed: Up to 4.6 GB/s read throughput.
  • Tech: Custom binary layout optimized for SSDs and OS page caching.

3. High-Performance Mutation

Transform your data in-place without memory duplication.

  • Arithmetic: Vectorized addition, subtraction, multiplication, and division.
  • Hygiene: Instant fillna() and round() operations across millions of rows.
  • Feature Engineering: Create new columns on the fly: df['total'] = df['qty'] * df['price'].

4. Cross-Platform & Universal

Run your code anywhere. PardoX automatically detects your OS and CPU architecture to load the optimized binary kernel.

  • Windows (x64)
  • Linux (x64)
  • MacOS (Intel & Apple Silicon M1/M2/M3)

📦 Installation

PardoX is available on PyPI. The package includes pre-compiled binaries for all supported platforms.

pip install pardox

🚀 Quick Start

Here is a complete ETL pipeline example: Load, Clean, Transform, and Analyze.

import pardox as px

# 1. Ingest Data (Auto-detected Schema)
# Uses multi-threaded Rust reader
df = px.read_csv("sales_data.csv")

print(f"Loaded {df.shape[0]} rows.")

# 2. Data Hygiene
# Fill nulls in numeric columns instantly
df.fillna(0.0)

# 3. Feature Engineering (Vectorized)
# Calculate total amount (Price * Quantity)
# This executes in Rust using SIMD instructions
df['total_amount'] = df['price'] * df['quantity']

# 4. Aggregations & Analysis
revenue = df['total_amount'].sum()
avg_ticket = df['total_amount'].mean()

print(f"Total Revenue: ${revenue:,.2f}")
print(f"Avg Ticket:    ${avg_ticket:,.2f}")

# 5. Persist to Disk
# Save as PRDX for ultra-fast loading later
df.to_prdx("sales_data_processed.prdx")

📊 Benchmarks

Hardware: MacBook Pro M2, 16GB RAM.

Operation Pandas (v2.x) PardoX (v0.1) Speedup
Read CSV (1GB) 4.2s 0.8s 5.2x
Column Math 0.15s 0.02s 7.5x
Fill NA 0.30s 0.04s 7.5x
Read Binary 0.9s (Parquet) 0.2s (.prdx) 4.5x

🗺️ Roadmap

We are building the universal data engine. Here is what's coming next:

v0.1 (Current): Python Core, Arithmetic, I/O, Basic Aggregations.

v0.2 (Planned):

    Universal SDKs: Bindings for Node.js, Go, and PHP.

    Advanced Types: String manipulation kernels (Regex, Splitting).

    ML Bridge: Zero-Copy export to NumPy and Arrow.

🤝 Contributing

We welcome contributions! Please see our Contributing Guide for details on how to set up the Rust environment and build the project locally.

📄 License

This project is licensed under the MIT License.

Built with ❤️ by Alberto Cardenas

www.albertocardenas.com

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pardox-0.1.0.tar.gz (18.2 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pardox-0.1.0-py3-none-any.whl (18.3 MB view details)

Uploaded Python 3

File details

Details for the file pardox-0.1.0.tar.gz.

File metadata

  • Download URL: pardox-0.1.0.tar.gz
  • Upload date:
  • Size: 18.2 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for pardox-0.1.0.tar.gz
Algorithm Hash digest
SHA256 12311948abd81c19047e667682f5273d9c2e4bce8090e86bfe6ebd43e850d0d3
MD5 f7980bd18dbd6d2d46477c7d03e8659d
BLAKE2b-256 77d812f88b2214b1bdfb27a1cc2539bf66bb3c0dda04b9fac5b5339076892bdb

See more details on using hashes here.

File details

Details for the file pardox-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: pardox-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 18.3 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for pardox-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 08fe18df25e83d9fbfcca2125199d4faf8db110fb1ff47bc4d8f88f4f62aa589
MD5 6a139c715ed3de6affe10cc8cdc9629b
BLAKE2b-256 340f80f13b8de3486a19eb8dc6217f949b31b7ab4cd6cec0dcdc67245b8ced9c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page