Wprowadzenie do PySpark RDD

Podstawy Big Data z PySpark

Upendra Devisetty

Science Analyst, CyVerse

Czym jest RDD?

  • RDD = Resilient Distributed Datasets

rdd

Podstawy Big Data z PySpark

Budowa RDD

  • Resilient Distributed Datasets

    • Resilient: odporność na awarie

    • Distributed: rozłożenie na wiele maszyn

    • Datasets: kolekcja podzielonych danych, np. tablice, tabele, krotki

Podstawy Big Data z PySpark

Tworzenie RDD – jak to zrobić?

  • Zrównoleglenie istniejącej kolekcji obiektów

  • Zewnętrzne zbiory danych:

    • Pliki w HDFS

    • Obiekty w zasobniku Amazon S3

    • Wiersze w pliku tekstowym

  • Z istniejących RDD

Podstawy Big Data z PySpark

Kolekcja zrównoleglona (parallelizing)

  • parallelize() – tworzenie RDD z list Pythona
numRDD = sc.parallelize([1,2,3,4])
helloRDD = sc.parallelize("Hello world")
type(helloRDD)
<class 'pyspark.rdd.PipelinedRDD'>
Podstawy Big Data z PySpark

Z zewnętrznych zbiorów danych

  • textFile() – tworzenie RDD z zewnętrznych zbiorów danych
fileRDD = sc.textFile("README.md")
type(fileRDD)
<class 'pyspark.rdd.PipelinedRDD'>
Podstawy Big Data z PySpark

Partycjonowanie w PySpark

  • Partycja to logiczny podział dużego rozproszonego zbioru danych

  • Metoda parallelize()

numRDD = sc.parallelize(range(10), minPartitions = 6)
  • Metoda textFile()
fileRDD = sc.textFile("README.md", minPartitions = 6)
  • Liczbę partycji w RDD można sprawdzić metodą getNumPartitions()
Podstawy Big Data z PySpark

Czas na ćwiczenia!

Podstawy Big Data z PySpark

Preparing Video For Download...