Query 小測試?
使用 DataFrame 介面的其中一個好處,是你可以在 Spark 叢集中的資料表上執行 SQL 查詢。即使你沒有 SQL 經驗也別擔心,我們會提供查詢給你!(想進一步學習 SQL,建議從我們的課程[Introduction to SQL]開始: https://www.datacamp.com/courses/intro-to-sql-for-data-science )
就像你在上一題看到的,你的叢集中有一個 flights 資料表。這個表包含 2014 和 2015 年,從波特蘭國際機場(PDX)或西雅圖-塔科馬國際機場(SEA)起飛的每一班航班,各佔一列。
在這個表上執行查詢很簡單,只要對你的 SparkSession 使用 .sql() 方法即可。這個方法接收包含查詢的字串,並回傳一個帶有結果的 DataFrame!
仔細看你會發現,查詢中只提到了 flights 資料表,並沒有把它當成任何方法的引數。這是因為在你的環境裡並沒有保存該資料的本機物件,所以把表當成引數傳入並沒有意義。
記住,我們已經在你的工作空間中建立了一個名為 spark 的 SparkSession。(不再叫做 my_spark,因為我們已經替你建立好了!)
本練習屬於課程
PySpark 基礎
練習說明
- 使用
.sql()方法取得flights資料表的前 10 列,並將結果儲存到flights10。變數query已包含對應的 SQL 查詢。 - 使用 DataFrame 的
.show()方法印出flights10。
動手互動練習
試著完成這個範例程式碼,體驗一下這個練習。
# Don't change this query
query = "FROM flights SELECT * LIMIT 10"
# Get the first 10 rows of flights
flights10 = ____
# Show the results
flights10.____