Introductie tot PySpark RDD

Big Data Fundamentals met PySpark

Upendra Devisetty

Science Analyst, CyVerse

Wat is een RDD?

  • RDD = Resilient Distributed Datasets

rdd

Big Data Fundamentals met PySpark

RDD’s ontleden

  • Resilient Distributed Datasets

    • Resilient: kan storingen opvangen

    • Distributed: over meerdere machines verdeeld

    • Datasets: verzameling gepartitioneerde data, bijv. arrays, tabellen, tuples, enz.

Big Data Fundamentals met PySpark

RDD’s maken. Hoe doe je dat?

  • Een bestaande collectie objecten paralleliseren

  • Externe datasets:

    • Bestanden in HDFS

    • Objecten in een Amazon S3-bucket

    • regels in een tekstbestand

  • Vanuit bestaande RDD’s

Big Data Fundamentals met PySpark

Geparalleliseerde collectie (paralleliseren)

  • parallelize() om RDD’s te maken van Python-lijsten
numRDD = sc.parallelize([1,2,3,4])
helloRDD = sc.parallelize("Hello world")
type(helloRDD)
<class 'pyspark.rdd.PipelinedRDD'>
Big Data Fundamentals met PySpark

Van externe datasets

  • textFile() om RDD’s te maken van externe datasets
fileRDD = sc.textFile("README.md")
type(fileRDD)
<class 'pyspark.rdd.PipelinedRDD'>
Big Data Fundamentals met PySpark

Partitionering in PySpark begrijpen

  • Een partitie is een logische verdeling van een grote, gedistribueerde dataset

  • methode parallelize()

numRDD = sc.parallelize(range(10), minPartitions = 6)
  • methode textFile()
fileRDD = sc.textFile("README.md", minPartitions = 6)
  • Het aantal partities in een RDD vind je met de methode getNumPartitions()
Big Data Fundamentals met PySpark

Laten we oefenen!

Big Data Fundamentals met PySpark

Preparing Video For Download...