Data terughalen uit Spark
In de oefening 'Exploring the structure of tibbles' uit Hoofdstuk 1 zag je dat tibbles geen kopie van de data opslaan. In plaats daarvan blijft de data in Spark, en slaat de tibble alleen op welke gegevens het uit Spark wil ophalen.
Er zijn veel redenen om je data van Spark naar R te verplaatsen. Je hebt al gezien dat er wat data van Spark naar R gaat wanneer je deze print. Je moet je gegevens ook ophalen als je ze wilt plotten, of als je een modelleertechniek wilt gebruiken die niet beschikbaar is in Spark. (R heeft tenslotte de grootste selectie aan beschikbare modellen van alle programmeertalen.)
Om je data te verzamelen—dus te verplaatsen van Spark naar R—roep je collect() aan.
Deze oefening maakt deel uit van de cursus
Introductie tot Spark met sparklyr in R
Oefeninstructies
Er is een Spark-verbinding voor je aangemaakt als spark_conn. Een tibble die is gekoppeld aan de trackmetadata die in Spark is opgeslagen, is vooraf gedefinieerd als track_metadata_tbl.
- Filter de rijen van
track_metadata_tblwaarartist_familiaritygroter is dan 0,9, en wijs de resultaten toe aanresults. - Print de klasse van
resultsen merk op dat dit eentbl_lazyis (gebruikt voor externe data). - Haal je resultaten op met
collect()en wijs ze toe aancollected. - Print de klasse van
collecteden merk op dat dit eentbl_dfis (gebruikt voor lokale data).
Interactieve oefening met praktijkervaring
Probeer deze oefening door deze voorbeeldcode aan te vullen.
# 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
___