Ćwiczenie z buforowaniem: część 1
W kolejnych ćwiczeniach poeksperymentujesz z różnymi sposobami buforowania dwóch DataFrame'ów.
DataFrame df1 jest wczytywany z pliku CSV, a następnie poddawany kilku krokom przetwarzania. Ponieważ df1 będzie używany więcej niż raz, jest dobrym kandydatem do buforowania.
Drugi DataFrame – df2 – powstaje przez wykonanie dodatkowych, kosztownych obliczeniowo operacji na df1. On również nadaje się do buforowania.
Ponieważ df2 zależy od df1, pojawia się pytanie: czy lepiej buforować df1, czy df2?
W tym ćwiczeniu spróbujemy zbuforować df1. Zwróć uwagę na czas wykonania poszczególnych akcji – porównamy je w następnym ćwiczeniu.
To ćwiczenie jest częścią kursu
Wprowadzenie do Spark SQL w Pythonie
Instrukcje do ćwiczenia
- Zbuforuj tylko
df1. - Uruchom pierwszą akcję na
df1i powtórz ją, a następnie uruchom akcję nadf2i również ją powtórz. Ten krok został już za ciebie przygotowany. - Sprawdź, czy
df1jest zbuforowany.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# 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(____)