Skip to main content

PySpark reference execution plugin for ETLantic.

Project description

etlantic-pyspark

PySpark reference execution plugin and portable transform compiler for ETLantic 0.36.

Note: This plugin and ETLantic core use Beta classifiers for documented single-tenant pilots. Classifiers are not an enterprise SLA.

Install

pip install etlantic-pyspark
# Optional Delta Lake support:
pip install "etlantic-pyspark[delta]"

Native Spark plugin

from etlantic import Profile

Profile(name="spark-local", spark_engine="pyspark")

Register @Transformation.implementation("pyspark") handlers that take Spark DataFrames (or lists of contract models) and return Spark DataFrames.

Native capabilities

  • Lazy Spark region fusion with preserved logical identities
  • Local Spark provider (local[*]) — secrets resolved only at session acquire
  • Native-expression preference with UDF policy diagnostics
  • Contract ↔ Spark schema mapping (lossy/unknown never guessed)
  • Valid/invalid row separation
  • Delta-compatible write intents (append/overwrite/merge) when Delta is enabled
  • Structured Streaming foundation (experimental)

Portable transform compiler

Entry point: etlantic.transform_compilersetlantic_pyspark:create_transform_compiler.

Claims portable-relational-kernel/1 and portable-relational/1. Lowers dtcs.transform-plan/2 to native Spark DataFrame/Column expressions. Automatic Python/Pandas UDF fallback is forbidden on the portable path (native UDF policy stays separate). Default CI uses sparkless; set SPARKLESS_TEST_MODE=pyspark for real JVM Catalyst checks.

Not included: managed cloud providers (Databricks/EMR/Connect).

Links

PySpark tutorial · Compatibility · Source · Issues

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

etlantic_pyspark-0.36.0.tar.gz (21.2 kB view details)

Uploaded Source

Built Distribution

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

etlantic_pyspark-0.36.0-py3-none-any.whl (24.9 kB view details)

Uploaded Python 3

File details

Details for the file etlantic_pyspark-0.36.0.tar.gz.

File metadata

  • Download URL: etlantic_pyspark-0.36.0.tar.gz
  • Upload date:
  • Size: 21.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.3 {"installer":{"name":"uv","version":"0.11.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for etlantic_pyspark-0.36.0.tar.gz
Algorithm Hash digest
SHA256 1e943f7a812987442ef763c6252de78f77e45b2d0dfe2403d06e7ff04e280a5c
MD5 def64eb0b24ed1925a9fa5c70dc87315
BLAKE2b-256 577d53a74a2dbe6e6b7ee0a0af5b0d350dfc595606eb85792108e44f4e585e4e

See more details on using hashes here.

File details

Details for the file etlantic_pyspark-0.36.0-py3-none-any.whl.

File metadata

  • Download URL: etlantic_pyspark-0.36.0-py3-none-any.whl
  • Upload date:
  • Size: 24.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.3 {"installer":{"name":"uv","version":"0.11.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for etlantic_pyspark-0.36.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f39829b12693ea30614621b148738f3e67a9c3b9db39d9042fed9052bf5f727e
MD5 e87ddaecc2fab2f290aa2b2d97264030
BLAKE2b-256 b2a4d2a919c787010bbbbc8d5d56752a3f507cd99a58d921e912f8fa6502fa6f

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