開始使用免費開始

從 Spark 收集資料回到 R

在第 1 章的「Exploring the structure of tibbles」練習中,你看到 tibble 並不會儲存資料的副本。相反地,資料會留在 Spark,而 tibble 只會記錄它想從 Spark 取回哪些內容的細節。

有許多理由會讓你想把資料從 Spark 移到 R。你已經看過在列印時,部分資料會從 Spark 傳到 R。當你想要繪圖,或想使用 Spark 尚未提供的建模技術時,也需要先把資料收集回來。(畢竟,R 擁有所有程式語言中最齊全的模型選擇。)

若要收集資料——也就是把資料從 Spark 移到 R——請呼叫 collect()

本練習屬於課程

使用 R 的 sparklyr:Spark 入門

檢視課程

練習說明

我們已經為你建立好名為 spark_conn 的 Spark 連線。連結到儲存在 Spark 中之曲目中繼資料的 tibble 也已預先定義為 track_metadata_tbl

  • 篩選 track_metadata_tblartist_familiarity 大於 0.9 的列,並將結果指派給 results
  • 列印 results 的類別,並注意這是一個用於遠端資料的 tbl_lazy
  • 收集結果,並將其指派給 collected
  • 列印 collected 的類別,並注意這是一個用於本機資料的 tbl_df

動手互動練習

試著完成這個範例程式碼,體驗一下這個練習。

# track_metadata_tbl has been pre-defined
track_metadata_tbl

results <- track_metadata_tbl %>%
  # Filter where artist familiarity is greater than 0.9
  ___

# Examine the class of the results
___

# Collect your results
collected <- results %>%
  ___

# Examine the class of the collected results
___
編輯並執行程式碼