Importare file Parquet in Apache Spark con Python

Mattepuffo's logo
Importare file Parquet in Apache Spark con Python

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!


Condividi

Commentami!