Caching

Curățarea datelor cu PySpark

Mike Metzger

Data Engineering Consultant

Ce este caching-ul?

Caching-ul în Spark:

  • Stochează DataFrame-uri în memorie sau pe disc
  • Îmbunătățește viteza pentru transformări / acțiuni ulterioare
  • Reduce consumul de resurse
Curățarea datelor cu PySpark

Dezavantajele caching-ului

  • Seturile de date foarte mari pot depăși memoria disponibilă
  • Caching-ul pe disc local poate să nu îmbunătățească performanța
  • Obiectele din cache pot deveni indisponibile
Curățarea datelor cu PySpark

Sfaturi pentru caching

La dezvoltarea task-urilor Spark:

  • Utilizați caching-ul doar dacă este necesar
  • Testați caching-ul DataFrame-urilor în puncte diferite și verificați îmbunătățirea performanței
  • Stocați în memorie și pe SSD / NVMe rapid
  • Stocați pe disc local lent dacă este necesar
  • Utilizați fișiere intermediare!
  • Opriți caching-ul obiectelor când nu mai este nevoie de ele
Curățarea datelor cu PySpark

Implementarea caching-ului

Apelați .cache() pe DataFrame înainte de Acțiune

voter_df = spark.read.csv('voter_data.txt.gz')
voter_df.cache().count()
voter_df = voter_df.withColumn('ID', monotonically_increasing_id())
voter_df = voter_df.cache()
voter_df.show()
Curățarea datelor cu PySpark

Operații suplimentare de cache

Verificați .is_cached pentru a determina starea cache-ului

print(voter_df.is_cached)
True

Apelați .unpersist() când ați terminat cu DataFrame-ul

voter_df.unpersist()
Curățarea datelor cu PySpark

Să exersăm!

Curățarea datelor cu PySpark

Preparing Video For Download...