Czas na zapytania!
Jedną z zalet interfejsu DataFrame jest możliwość uruchamiania zapytań SQL na tabelach w klastrze Spark. Jeśli nie masz doświadczenia z SQL-em, nie martw się – dostarczymy ci gotowe zapytania! (Jeśli chcesz nauczyć się więcej o SQL-u, zacznij od naszego kursu Wprowadzenie do SQL.)
Jak widziałeś w poprzednim ćwiczeniu, jedną z tabel w twoim klastrze jest tabela flights. Zawiera ona wiersz dla każdego lotu, który wyleciał z Portland International Airport (PDX) lub Seattle-Tacoma International Airport (SEA) w latach 2014 i 2015.
Uruchomienie zapytania na tej tabeli jest proste – wystarczy użyć metody .sql() na obiekcie SparkSession. Metoda ta przyjmuje ciąg znaków z zapytaniem i zwraca DataFrame z wynikami!
Jeśli przyjrzysz się uważnie, zauważysz, że tabela flights pojawia się tylko w zapytaniu, a nie jako argument żadnej metody. Wynika to z tego, że w twoim środowisku nie istnieje lokalny obiekt przechowujący te dane, więc przekazywanie tabeli jako argumentu nie miałoby sensu.
Pamiętaj, że w twoim środowisku pracy jest już dostępna sesja SparkSession o nazwie spark. (Nie nazywa się już my_spark, bo została przygotowana dla ciebie!)
To ćwiczenie jest częścią kursu
Podstawy PySpark
Instrukcje do ćwiczenia
- Użyj metody
.sql(), aby pobrać pierwsze 10 wierszy tabeliflightsi zapisz wynik do zmiennejflights10. Zmiennaqueryzawiera odpowiednie zapytanie SQL. - Użyj metody DataFrame
.show(), aby wyświetlić zawartośćflights10.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# Don't change this query
query = "FROM flights SELECT * LIMIT 10"
# Get the first 10 rows of flights
flights10 = ____
# Show the results
flights10.____