Önbelleğe alma pratiği: bölüm 1
Sonraki birkaç egzersizde iki DataFrame’i önbelleğe almanın farklı yollarını deneyeceksin.
Bir dataframe olan df1 bir csv dosyasından yükleniyor. Üzerinde birkaç işleme adımı uygulanıyor. df1 birden fazla kez kullanılacağından, önbelleğe alma için uygun bir aday.
İkinci bir dataframe olan df2, df1 üzerinde ek ve işlemci yoğun adımlar uygulanarak oluşturuluyor. O da önbelleğe alma için bir aday.
df2, df1’a bağlı olduğundan şu soru ortaya çıkıyor: df1’i mi önbelleğe almak daha iyi, yoksa df2’yi mi?
Bu egzersizde df1’i önbelleğe almayı deneyeceğiz. Her bir eylemin ne kadar sürdüğüne dikkat et. Bunları bir sonraki egzersizde karşılaştıracağız.
Bu egzersiz
Python ile Spark SQL'e Giriş
kursunun bir parçasıdırEgzersiz talimatları
- Yalnızca
df1’i önbelleğe al. df1üzerinde bir eylem çalıştır ve tekrarla, sonradf2üzerinde bir eylem çalıştır ve tekrarla. Bu kısım senin için yapıldı.df1’in önbelleğe alınıp alınmadığını doğrula.
Uygulamalı interaktif egzersiz
Bu örnek kodu tamamlayarak bu egzersizi bitirin.
# Unpersists df1 and df2 and initializes a timer
prep(df1, df2)
# Cache df1
____
# Run actions on both dataframes
run(df1, "df1_1st")
run(df1, "df1_2nd")
run(df2, "df2_1st")
run(df2, "df2_2nd", elapsed=True)
# Prove df1 is cached
print(____)