skillfed

snowpark-connect

Snowpark Connect for Spark

snowpark-connect v1.38.0 136.0K downloads/30d#11,412 on PyPI
Permissive license Apache License, Version 2.0 Active released

What it is and what it does

Snowpark Connect for Spark bridges PySpark and Snowflake by implementing the Spark Connect protocol, allowing you to write familiar PySpark code that executes remotely on Snowflake's infrastructure rather than a local or managed Spark cluster. This decoupling means you can leverage Snowflake's governance, security, and scalability without the operational overhead of cluster management. The package supports pushdown optimizations, meaning queries are translated and executed natively in Snowflake where possible.

The package is built on a large dependency stack including jpype1 (for Java interop), py4j (Spark's Python-Java bridge), pandas and pyarrow (for data interchange), and gRPC components (for the Connect protocol). It requires Python >=3.10 and <3.13 and is actively maintained. Installation is straightforward via pip, though the dependency tree is substantial.

Use it for:

  • Migrate existing PySpark jobs to Snowflake without rewriting code, using Spark Connect as the execution bridge.
  • Build data pipelines that combine Snowflake's native SQL performance with PySpark's data transformation flexibility.
  • Eliminate Spark cluster provisioning and management overhead by offloading compute to Snowflake's managed infrastructure.
  • Integrate Snowflake governance and security policies into Spark-based ETL workflows without separate cluster authentication.
  • Prototype and test Spark workloads against Snowflake without standing up a dedicated Spark environment.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Snowpark Connect for Spark lets you run Spark workloads directly against Snowflake's compute engine using the Spark Connect protocol, without managing a separate Spark cluster.

Yes, if you have Snowflake infrastructure and want to run PySpark workloads against it without managing a Spark cluster. The package is actively maintained, has no known vulnerabilities, and carries a permissive license. The substantial dependency footprint (21 runtime packages) is a trade-off for full Spark Connect support; verify that your Python version and platform are compatible with jpype1 before installing.

Install

snowpark-connect on PyPI

pip

pip install snowpark-connect

uv

uv add snowpark-connect

poetry

poetry add snowpark-connect

Installing snowpark-connect

Before you install

Low install friction with a pure-Python wheel distribution. Active maintenance as of 2026-08-13. The package carries 21 runtime dependencies including substantial stacks (jpype1, py4j, pandas, pyarrow, grpcio), so installation will pull a large dependency tree.

License in practice

Licensed under Apache License, Version 2.0 (permissive). You can use, modify, and distribute this package freely in commercial and private projects, subject to license attribution.

Quickstart

pip install snowpark-connect

from snowpark.connect import Session

session = Session.builder.configs({...}).create()

Requires Python >=3.10 and <3.13. Snowflake credentials and connectivity are required to establish a session.

Verify before relying

  • Whether the 21 runtime dependencies have known compatibility issues on specific platforms.
  • Whether Spark Connect protocol support is feature-complete or if certain PySpark operations are not yet pushable to Snowflake.
  • Performance characteristics and optimization details for typical workloads compared to traditional Spark clusters.

Package facts

License Apache License, Version 2.0 (permissive)
Python support capped below the current Python release (<3.13,>=3.10)
Install friction low — pure-Python wheel
Runtime dependencies 21 — snowpark-connect-deps-1, snowpark-connect-deps-2, certifi, cloudpickle, fsspec, jpype1, protobuf, s3fs, snowflake.core, snowflake-snowpark-python, snowflake-connector-python, sqlglot, aiobotocore, py4j, pandas, pyarrow, grpcio, grpcio-status, googleapis-common-protos, numpy, gcsfs
Maintenance actively maintained — 1 days since the last release
First released
Downloads 135,958/month — #11,412 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: snowpark_connect-1.38.0-py3-none-any.whl

Keywords: snowflake, snowpark, connect, spark

Tags

spark on snowflakesnowpark connectspark connect protocolpyspark snowflake integrationremote spark executionsnowflake compute enginespark cluster alternative
spark-integrationdata-warehouse

More Distributed Computing packages