Skip to main content

Tekumara build of Apache PySpark with Hadoop 3.x

A build of Apache PySpark that uses the hadoop-cloud maven profile to bundle hadoop-aws 3.x which contains S3A.

Install

See Releases

Usage

To use pyspark with temporary STS credentials:

pyspark --driver-java-options "-Dspark.hadoop.fs.s3a.aws.credentials.provider=org.apache.hadoop.fs.s3a.TemporaryAWSCredentialsProvider"

To modify an existing spark session to use S3A for S3 urls, for example spark in the pyspark shell:

spark.sparkContext._jsc.hadoopConfiguration().set("fs.s3.impl", "org.apache.hadoop.fs.s3a.S3AFileSystem")

See test_s3a.py for an example of using the staging committers.

Rationale

The pyspark distribution on pypi ships with hadoop 2.7 and no cloud jars (ie: hadoop-aws). So common practice is to use hadoop-aws 2.7.3 as follows:

pyspark --packages "org.apache.hadoop:hadoop-aws:2.7.3" --driver-java-options "-Dspark.hadoop.fs.s3.impl=org.apache.hadoop.fs.s3a.S3AFileSystem"

However, later versions of hadoop-aws cannot be used this way without errors.

This project builds a pyspark distribution from source with Hadoop 3.x.

Later versions of hadoop-aws contain the following new features:

To take advantage of the 3.x release line committers in Spark you also need the binding classes introduced into Spark 3.0.0 by SPARK-23977. For Spark 2.4, the HortonWorks backport is used from the Hortonworks repo.

Metadata

Release files for pyspark-cloud 0.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pyspark-cloud 0.0.0
File Size Uploaded
pyspark-cloud-0.0.0.tar.gz 463.5 kB Details

Release files / pyspark-cloud-0.0.0.tar.gz

Download URL pyspark-cloud-0.0.0.tar.gz
Size 463.5 kB
Tags Source
SHA-256 checksum
How to use checksums
8962d07504fdc8939a2944a7d8ca5971c82400b068326427b5bb795e60d242eb
BLAKE2b-256 checksum
How to use checksums
4beb52b50d6cb59a6a71d9e091f06b8f3157a20ba4c6050fc2717743866eb9b6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.6.1 requests/2.24.0 setuptools/50.3.2 requests-toolbelt/0.9.1 tqdm/4.51.0 CPython/3.9.0

Release history Release notifications | RSS feed

This release

0.0.0 This release

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page