Leniwe przetwarzanie w praktyce
Operacje leniwego przetwarzania zazwyczaj kończą się w podobnym czasie, niezależnie od rzeczywistej ilości danych. Wynika to z tego, że Spark nie wykonuje żadnych transformacji, dopóki nie zostanie wywołana akcja.
W tym ćwiczeniu zdefiniujesz DataFrame (aa_dfw_df) i dodasz kilka transformacji. Zwróć uwagę na czas potrzebny do ich wykonania – najpierw przy samym definiowaniu, a potem przy faktycznym odpytaniu danych. Różnice mogą być niewielkie, ale zauważalne. Pracując z pełnym klastrem Spark i większymi zbiorami danych, będą one znacznie bardziej widoczne.
To ćwiczenie jest częścią kursu
Czyszczenie danych w PySpark
Instrukcje do ćwiczenia
- Wczytaj DataFrame.
- Dodaj transformację
F.lower()do kolumnyDestination Airport. - Wyświetl DataFrame za pomocą
.show()i zaobserwuj różnicę w czasie wykonania tej akcji.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# Load the CSV file
aa_dfw_df = ____.____.____('csv').options(Header=True).load('AA_DFW_2018.csv.gz')
# Add the airport column using the F.lower() method
aa_dfw_df = aa_dfw_df.withColumn('airport', ____(aa_dfw_df['Destination Airport']))
# Show the DataFrame
____