Vue d'ensemble

PySpark 3.4, publié le 14 avril 2023, introduit Spark Connect, un client Python léger pour se connecter à distance à un cluster Spark.

Fonctionnalités principales

Spark Connect

Spark Connect permet de se connecter à un cluster Spark via gRPC sans embarquer de JVM locale. Le client Python est léger et s'installe simplement via pip.

python
from pyspark.sql import SparkSession

# Connexion via Spark Connect
spark = SparkSession.builder.remote(
    'sc://cluster-spark:15002'
).getOrCreate()

df = spark.read.parquet('donnees.parquet')
resultat = df.groupBy('categorie').count()
resultat.show()

Client Python léger

Le client Python Spark Connect ne nécessite pas d'installation Java locale. Il communique avec le serveur Spark via un protocole binaire efficace.

python
# Installation légère
# pip install pyspark[connect]

from pyspark.sql import SparkSession
from pyspark.sql.functions import col, avg

spark = SparkSession.builder.remote(
    'sc://localhost:15002'
).getOrCreate()

# API DataFrame identique
df = spark.createDataFrame([
    ('Alice', 85), ('Bob', 92), ('Charlie', 78)
], ['nom', 'score'])

print(df.select(avg(col('score'))).collect())

Sources