Run queries
Polars Nanook runs the lazy Polars queries you already write, on compute in your infrastructure. The
query stays the same. You add .remote(ctx) and call .collect(), where ctx is a context that
says where the query runs:
- A
ComputeContextstarts compute in your AWS account. - A
ClusterContextconnects to a cluster you run, with the Helm chart or on bare-metal.
Connect and run
-
Log in
Authenticate the client, interactively or with a service account.
-
Run a remote query
Run a query remotely and stream the result back or write it to storage.
-
Connect to AWS compute
Size a
ComputeContext, keep it running with the idle timeout and manifests, and reconnect to it. -
Connect to a cluster you run
Point a
ClusterContextat the scheduler of a Helm chart or bare-metal cluster. -
Use Python packages and plugins
Expression plugins and Python UDFs on the workers.
Data
-
Read and write cloud storage
Scan and sink S3, GCS and Azure Blob Storage from the workers.
-
Read from HDFS
Read HDFS paths and Iceberg tables on HDFS.
-
Keep results on the cluster
Store a result on the cluster, preview it or keep chaining.
-
Emit OpenLineage events
Send a lineage event for every query to a collector.
Performance
-
How the distributed engine works
From a LazyFrame to stages, partitions and shuffles across workers.
-
Profile a query
See where a query spends its time: plans, operators, stages and shuffles.
-
Scale a query
Single node or distributed, and the workers a query uses.
-
Run queries on GPUs
Run distributed queries on NVIDIA GPUs with cudf-polars.
Orchestrate
-
Orchestrate queries
Schedule queries from Airflow, Dagster, Prefect or AWS Lambda.