Importare file Parquet in Apache Spark con Python
Abbiamo cretato il nostro bel file Parquet, e lo vogliamo dare in pasto ad Apache Spark usando Python.
In questo articolo vediamo come fare.
La premessa è che dovreste avere una versione di Java un pò più vecchia, tipo la 17.
Poi io ho settato la versione direttamente nello script e non a livello di sistema.
Voi ovviamente fare come preferite.
Detto ciò installiamo la libreria con pip:
pip install pyspark
Ecco il codice:
import os
from pyspark.sql import SparkSession
from pyspark.sql import functions as F
os.environ['JAVA_HOME'] = '/usr/lib/jvm/java-17-openjdk'
spark = SparkSession.builder \
.appName("Esempio Parquet") \
.master("local[*]") \
.getOrCreate()
df = spark.read.parquet("movimenti_export.parquet")
print("=== Schema del file ===")
df.printSchema()
print("\n=== Prime 10 righe ===")
df.show(10)
print("\n=== Numero totale di righe ===")
print(f"Totale righe: {df.count()}")
print("\n=== Nome delle colonne ===")
print(df.columns)
df_filtrato = df.filter(F.col("mov_valore") > 100)
print("\n=== Movimenti sopra i 100 euro ===")
df_filtrato.show(5)
df_aggregato = df \
.withColumn("anno", F.year(F.col("mov_data"))) \
.groupBy("anno") \
.agg(
F.sum("mov_valore").alias("totale"),
F.count("*").alias("numero_movimenti")
) \
.orderBy("anno")
print("\n=== Aggregazione per anno ===")
df_aggregato.show()
spark.stop()
Enjoy!
python pip apache spark parquet
Commentami!