Polars
Polars
@pola.rs
Dataframes powered by a multithreaded, vectorized query engine, written in Rust.
1K followers3 following96 posts
We just released Polars 2.0. It removed many of our legacy decisions makes the streaming engine our default and promotes SQL to a first class citizen within Polars. pola.rs/posts/releas...
Polars 2.0.0rc2 has been released. We expect this to be the last release candidate and that Polars 2.0 will go live next week. Install now by running `pip install --pre polars` Link to the full release guide: docs.pola.rs/releases/upg...
Profile any Polars query to view its progress and optimize performance with one line change: pl.Config.enable_monitoring() Read the full blog: pola.rs/posts/profil...
We are happy to announce the first pre-release of Polars 2.0. Polars 2.0 will bring the streaming engine as a default and improves overall strictness of Polars. Give it a spin and share your thoughts. We expect the final Polars 2.0 release in 3-4 weeks. pola.rs/posts/announ...
The Polars GPU engine now runs on a new streaming backend, built with NVIDIA on their RapidsMPF library. • Queries are no longer bound by GPU memory. • The same query scales from one GPU to many. Full post: pola.rs/posts/gpu-st...
We've released Python Polars 1.44. Some of the highlights: • Schema evolution when writing to Iceberg • Adaptive rate limiting for cloud I/O • Correlated subqueries in SQL Blog post: pola.rs/posts/polars... Full changelog: github.com/pola-rs/pola...
As datasets grow, your tools can limit what analysis is possible. That causes teams to slows down or forces them to work with samples rather than the whole dataset. BMLL Technologies tackled this issue by migrating their workloads, resulting in a 48x performance improvement. pola.rs/posts/case-b...
We've released Polars Cloud client 0.10.0: • Stream query results into Python with `sink_batches()` • A new experimental query planner: Miso • Distributed `pl.collect_all()` • Hive-partition aware scans • On-Prem HDFS support Blog post: pola.rs/posts/polars... Changelog: github.com/pola-rs/pola...
Aggregating 500GB of compressed parquet with 16,000,000,000 rows to display it in an enterprise-ready Plotly dashboard. Check the dashboard: polars-cloud-demo.plotly.app And the blog: pola.rs/posts/market...
We've released Python Polars 1.43. Some of the highlights: • pl.list() • ewm_sum() and ewm_sum_by() • Faster joins on hive-partitioned data Blog post: pola.rs/posts/polars... Full changelog: github.com/pola-rs/pola...
Reading a terabyte dataset from S3 goes fastest on a cluster of small machines, while heavy joins run fastest on one big machine. We benchmarked single node Polars against distributed Polars on the same total resources, and the bottleneck of your query decides the winner. pola.rs/posts/single...
We've been busy in Q2 2026. Read all the highlights in the latest Polars in Aggregate: pola.rs/posts/polars...
We've released Polars Cloud client 0.9.0. • Expressions now run distributed • 17% Faster cloud I/O • Breaking: `ClusterContext` now uses `uri=` The `compute_address=` keyword is superseded by `uri=`. Blog post: pola.rs/posts/polars... Full changelog: github.com/polars-inc/p...
We've released Python Polars 1.42. Some of the highlights: • Adaptive cloud I/O concurrency - up to 4x faster reads • Contradictory filter elimination • is_sorted() for DataFrame and Expressions Blog post: pola.rs/posts/polars... Full changelog: github.com/pola-rs/pola...
How well do LLMs migrate pandas to Polars by themselves? We tested how well Claude translates a pandas corpus to Polars. Results were promising but not perfect. To improve this, we built a Polars skill that helps the agent. Read the full post here: pola.rs/posts/llm-po...
Run Polars' distributed engine on your own infrastructure. Deploy a distributed Polars cluster on any Kubernetes setup (EKS, AKS, GKE, or minikube) and get a query dashboard with past queries, advanced query profiling, Open-lineage support, and more. More at pola.rs/posts/polars...
We've released Python Polars 1.41. Some of the highlights: • Faster Parquet metadata decoding • Nested common subplan elimination • LazyFrame.gather() Blog post: pola.rs/posts/polars...
Handling schema changes in Polars. This blog post maps the four shapes of schema change (a new column appears, an expected one disappears, a type drifts, or one breaks) to the Polars solution that handles each, across CSV, multi-file Parquet, Delta Lake, and Apache Iceberg. pola.rs/posts/schema...
We've released Python Polars 1.40. The following now runs on the streaming engine • AsOf joins with a `by` argument • Basic elementwise over() • More expressions: cov(), corr(), interpolate(), skew(), kurtosis(), and entropy() and much more! github.com/pola-rs/pola...
We've been busy in Q1 2026. 12 releases. 778 PRs. 95 contributors (thank you!). Read all the highlights in the latest Polars in Aggregate: pola.rs/posts/polars...
Polars loves sorted data! If your data is already sorted, you can get a performance boost up to 18x when joining your datasets. Read all about it in our latest blog post: pola.rs/posts/stream...
Realtime query profiling of Polars In this post we use the query profiler in Polars Cloud to optimize the infrastructure configuration for a specific query. This results in a 54% faster and 64% cheaper query with only five runs. Read all about it here: pola.rs/posts/query-...
Jensen: "All of these platforms are processing DataFrames. This is the ground truth of business. ... Now we will have AI use structured data. And we are going to accelerate the living daylights out of it." Polars DataFrames are at the core of the AI revolution. www.youtube.com/watch?v=jw_o...
We've released Python Polars 1.39. Some of the highlights: • Streaming AsOf join, enabling memory-efficient time-series joins. • sink_iceberg() for writing to Iceberg tables • Streaming cloud downloads for scan_csv(), scan_ndjson(), and scan_lines() github.com/pola-rs/pola...
Easily scale Polars queries from Airflow. Our latest blog post walks through different patterns to run distributed Polars queries using Airflow: fire-and-forget execution, parallel queries, multi-stage pipelines, and manual cluster shutdowns. Read more here: pola.rs/posts/airflo...
We've released Python Polars 1.38. Some of the highlights: • (De)Compression support on text based sources and sinks • scan_lines() to read text files • Merge join in the Streaming engine Link to the complete changelog: github.com/pola-rs/pola...
We refactored the Categorical in 1.31. The new Categories object gives you: • Control over the physical type (UInt8/16/32) • Named categories with namespaces • Parallel updates without locks • Automatic garbage collection Full read: pola.rs/posts/catego...
Polars reposted
"We adopted Polars to meet strict technical requirements, but the result went beyond simple optimization. The 30x performance improvement gave us the unexpected opportunity to do more." Read about how Rabobank deployed Polars in a critical enterprise production environment: lnkd.in/eZFPcxRw
We've just released 1.36.0. Here are the highlights: Highlights: 🧩 Extension Types 🛟 Float16 Support ↪️ LazyFrame.pivot() 👀 DataFrame.show() 🗄️ SQL Parity: Added Window functions ⏱️ Parquet writer: 2.2x runtime improvement Find the full release notes here: github.com/pola-rs/pola...
It’s been a year since the last Polars in Aggregate. Since then, we've shipped 37 releases, merged over 2,300 PRs, and built two new engines. Here are the biggest highlights: ☁️ Polars Cloud is Live 🚀 Next-Gen Streaming engine. 🔢 Stable Decimals & Int128 and more pola.rs/posts/polars...
Citizens cut query times from 80 to 8 minutes by adopting Polars, but the transformation went beyond speed. It provided a "grammar of business logic, improving maintainability and unlocking complexity without heavy backend engineering. Read the full case study here: pola.rs/posts/case-c...
Polars recently shipped some performance upgrades and long-awaited features: 🏆 Decimal Type Now Stable 🏆 Aggregation over the List and Array Types ✨Other new features: Streaming ewm_mean() Expr.item() Expr.rolling_rank() pl.union() Read more: github.com/pola-rs/pola...
At the recent Polars meetup, Oliver & Daniel discussed how they migrated a pandas + SQL to Polars using Dataframely: - 22x speedup - 3x lower memory - 50% code reduction - Native dataframe validation with minimal overhead using Dataframely Watch: www.youtube.com/watch?v=TL-3...
Swiss insurer La Mobilière refactored their risk model to Polars, achieving 5-10x speedups and enabling actuaries to run millions of simulation years on laptops. A scale previously unfeasible with pandas due to memory and single-core limitations. pola.rs/posts/case-m...
We raised €18M in Series A led by Accel to build fast data processing at any scale. All on Polars. pola.rs/posts/series...