Introduzione al data cleaning con Apache Spark

Pulizia dei dati con PySpark

Mike Metzger

Data Engineering Consultant

Cos’è il Data Cleaning?

Data Cleaning: Preparare i dati grezzi per l’uso nelle pipeline di elaborazione.

Possibili attività di data cleaning:

  • Riformattare o sostituire testo
  • Eseguire calcoli
  • Rimuovere dati rumorosi o incompleti
Pulizia dei dati con PySpark

Perché fare data cleaning con Spark?

Problemi dei sistemi dati tipici:

  • Prestazioni
  • Organizzazione del flusso dati

Vantaggi di Spark:

  • Scalabile
  • Framework potente per la gestione dei dati
Pulizia dei dati con PySpark

Esempio di data cleaning

Dati grezzi:

name age (years) city
Smith, John 37 Dallas
Wilson, A. 59 Chicago
null 215

Dati puliti:

last name first name age (months) state
Smith John 444 TX
Wilson A. 708 IL
Pulizia dei dati con PySpark

Schemi Spark

  • Definisce il formato di un DataFrame
  • Può includere vari tipi di dati:
    • Stringhe, date, interi, array
  • Può filtrare dati rumorosi in import
  • Migliora le prestazioni di lettura
Pulizia dei dati con PySpark

Esempio di schema Spark

Importa lo schema

import pyspark.sql.types
peopleSchema = StructType([
  # Define the name field
  StructField('name', StringType(), True),
  # Add the age field
  StructField('age', IntegerType(), True),
  # Add the city field
  StructField('city', StringType(), True)  
])

Leggi il file CSV con i dati

people_df = spark.read.format('csv').load(name='rawdata.csv', schema=peopleSchema)
Pulizia dei dati con PySpark

Passons à la pratique !

Pulizia dei dati con PySpark

Preparing Video For Download...