polars
by
pola-rs

Description: Extremely fast Query Engine for DataFrames, written in Rust

View on GitHub ↗

Summary Information

Updated 1 hour ago
Added to GitGenius on September 17th, 2024
Created on May 13th, 2020
Open Issues & Pull Requests: 2,803 (+2)
Number of forks: 2,947
Total Stargazers: 38,979 (+0)
Total Subscribers: 213 (+0)

Issue Activity (beta)

Open issues: 2,488
New in 7 days: 20
Closed in 7 days: 21
Avg open age: 529 days
Stale 30+ days: 2,371
Stale 90+ days: 2,190

Recent activity

Opened in 7 days: 19
Closed in 7 days: 19
Comments in 7 days: 18
Events in 7 days: 159

Top labels

  • bug (6,982)
  • python (6,424)
  • enhancement (3,255)
  • needs triage (2,622)
  • accepted (2,234)
  • P-medium (758)
  • rust (714)
  • documentation (527)

Repository Insights (GitGenius)

Median issue/PR response: N/A
Mean response time: 131.1 days
90th percentile: 536.2 days
Tracked items: 4,154

Most active contributors

Detailed Description

Polars is an analytical query engine for DataFrames written in Rust, designed to deliver extremely fast performance for data processing tasks. The project is distributed across multiple language bindings including Python, Rust, Node.js, and R, making it accessible to developers working in different ecosystems. The core engine is written in Rust and leverages Apache Arrow's columnar format for efficient data representation and processing.

The repository implements both lazy and eager execution modes, allowing users to choose between immediate computation or optimized query planning. A key capability is streaming support for datasets larger than available RAM, enabling processing of multi-gigabyte datasets on resource-constrained machines through memory-efficient query execution. The engine includes built-in query optimization, multi-threaded execution, and SIMD operations to maximize computational throughput.

Performance benchmarks demonstrate that Polars ranks among the best-performing dataframe solutions available, with particularly fast import times compared to alternatives like NumPy and pandas. The library ships with zero required dependencies, contributing to its lightweight footprint. Optional feature flags allow users to customize builds for specific hardware capabilities, including support for older CPUs without AVX2 instructions through the rtcompat variant, and support for datasets exceeding 4.2 billion rows through the bigidx feature.

The Python interface can be compiled from source using Rust tooling, with multiple build options ranging from debug builds with fast compilation to highly optimized release builds. The project also supports extending Polars with custom Rust functions through PyO3 bindings, enabling users to write performance-critical code in Rust while maintaining Python interfaces.

GitGenius activity data shows this is a highly active project with 7035 tracked issues and pull requests. The median response latency for issues and PRs is 0.0 hours, indicating rapid community engagement. The most frequently labeled issues involve bugs (3995 occurrences) and Python-related topics (3981 occurrences), with a substantial triage queue of 2358 items. Core contributors ritchie46, nameexhaustion, and orlp have driven the majority of development activity with 4303, 3747, and 3472 tracked events respectively. The project shares contributors with major repositories including Microsoft's VSCode and TypeScript implementations, as well as the Rust language repository itself, suggesting deep integration with the broader systems programming and data processing communities.

The repository maintains comprehensive documentation across all supported languages and provides community support through Discord channels and Stack Overflow tags specific to each language binding. A managed cloud offering is available for users requiring distributed computing capabilities or fully managed infrastructure solutions.

polars
by
pola-rspola-rs/polars

Repository Details

Fetching additional details & charts...