PYSPARK -Paar RDD - Aktionen

PYSPARK -Paar RDD - Aktionen
In Python ist PySpark ein Spark -Modul, das eine ähnliche Art von Verarbeitung wie Spark bietet.

RDD steht für widerstandsfähige verteilte Datensätze. Wir können RDD als grundlegende Datenstruktur in Apache Spark bezeichnen. Paar RDD speichert die Elemente/Werte in Form von Schlüsselwertpaaren. Es speichert das Schlüsselwertpaar im Format (Schlüssel, Wert).

Wir müssen RDD aus dem PySpark importieren.RDD -Modul.

In PYSPARK, um eine RDD zu erstellen, können wir die parallelize () -Methode verwenden.

Syntax:

Spark_App.SparkContext.parallelisieren (Daten)

Wo:

Daten können eine eindimensionale (lineare Daten) oder zweidimensionale Daten (Zeilendaten) sein.

RDD -Aktionen:

Eine Aktion in RDD ist eine Operation, die auf einem RDD angewendet wird, um einen einzelnen Wert zurückzugeben. Mit anderen Worten, wir können sagen, dass eine Aktion aus den bereitgestellten Daten resultiert, indem Sie auf der angegebenen RDD einen Betrieb erledigen.

Paar RDD unterstützt nur eine Aktion. countbykey () ist die Aktion, die zu zwei RDD verwendet wird.

countbyey ()

Wie wir wissen, hat Pair RDD Schlüsselwertepaarelemente. CountByKey wird verwendet, um jeden verfügbaren Schlüssel mit einem Gesamtvorkommen als Wert von RDD zurückzugeben.

Dies kann mit der Methode () -Methode () erfolgen, die eine Wörterbuchmethode in Python ist.

items () wird verwendet, um die Schlüsselwertpaare aus einem Wörterbuch zu extrahieren. Wörterbücher speichern Artikel in einem Schlüsselwertpaar. Pair RDD liegt also nahe am Wörterbuch.

In dieser Aktion von CountByKey () wird die Methode () () die Methode () verwendet.

Syntax:

Pace_rdd.countbyey ().Artikel()

Wobei pepledd das Paar RDD ist.

Es gibt die Anzahl der Werte pro Schlüssel im Format zurück - dict_items ([(Schlüssel, Wert),…])

Wir können eine für die Schleife verwenden, um die Schlüssel und Werte zu durchschleifen.

Beispiel:

In diesem Beispiel haben wir mit 6 Schlüsselwertpaaren und angewandten Aktionen countbykey () ein Paar RDD namens Subjekts erstellt. Schließlich zeigen wir tatsächliche Aktionen und verwenden eine für die Schleife.

#Amportieren Sie das PYSPARK -Modul
pysspark importieren
#import SparkSession für die Erstellung einer Sitzung
aus pysspark.SQL Import SparkSession
# RDD aus PYSPARK importieren.RDD
aus pysspark.RDD Import RDD
#create eine App namens LinuxHint
Spark_app = SparkSession.Erbauer.AppName ('LinuxHint').Getorcreate ()
# Erstellen Sie 6 - Betreff- und Bewertungspaare
Subjekte_RATE = Spark_App.SparkContext.Parallelize ([('Python', 4), ('JavaScript', 2), ('Linux', 5), ('C#', 4), ('JavaScript', 4), ('Python', 3) ]))
#Apply countbykey () Aktion auf dem obigen Subjekts_rating -Paar RDD
Dictionary_RDD = Subjekts_rating.countbyey ().Artikel()
#Anzeige
print ("countByKey () Aktion auf rdd-subjects_rating:", Dictionary_rdd)
#Get die Tasten und Wertzahlen aus dem obigen Wörterbuch RDD
Für Tasten werden Werte in Dictionary_RDD:
print (Schlüssel, "->", Werte)

Ausgang:

countbykey () Aktion auf rdd-subjects_rating: dict_items ([('python', 2), ('JavaScript', 2), ('Linux', 1), ('C#', 1)])
Python -> 2
JavaScript -> 2
Linux -> 1
C# -> 1

Im Paar RDD,

  1. Taste-Python trat zweimal auf, daher wird der Wert dafür zurückgegeben 2
  2. Schlüssel-JavaScript trat zweimal auf, daher wird der Wert dafür zurückgegeben 2
  3. Taste-Linux- und Schlüssel-C-# trat 1 Zeit auf, so dass der Wert dafür zurückgegeben wird 1

countbykey () action mit keys ()

Wenn Sie nur Schlüsseln zurückgeben müssen, verwendet die Aktion von countbykey () die Keys () -Methode.

Syntax:

Pace_rdd.countbyey ().Schlüssel()

Wobei pepledd das Paar RDD ist.

Es gibt die Anzahl der Werte pro Schlüssel im Format zurück - dict_items ([Schlüssel,…])

Wir können eine für die Schleife verwenden, um die Schlüssel zu durchschleifen, um separat zurückzukehren.

Beispiel:

In diesem Beispiel haben wir ein Paar RDD mit dem Namen Subjekts erstellt, das mit 6 Schlüsselwertpaaren und angewandte Aktionen () darauf aufgenommen wurde, um nur Schlüsseln zu erhalten. Schließlich zeigen wir tatsächliche Aktionen und verwenden eine für die Schleife.

#Amportieren Sie das PYSPARK -Modul
pysspark importieren
#import SparkSession für die Erstellung einer Sitzung
aus pysspark.SQL Import SparkSession
# RDD aus PYSPARK importieren.RDD
aus pysspark.RDD Import RDD
#create eine App namens LinuxHint
Spark_app = SparkSession.Erbauer.AppName ('LinuxHint').Getorcreate ()
# Erstellen Sie 6 - Betreff- und Bewertungspaare
Subjekte_RATE = Spark_App.SparkContext.Parallelize ([('Python', 4), ('JavaScript', 2), ('Linux', 5), ('C#', 4), ('JavaScript', 4), ('Python', 3) ]))
#Apply countByKey () Aktion auf den obigen Probanden_rating -Paar RDD, um Tasten zu erhalten
Dictionary_RDD = Subjekts_rating.countbyey ().Schlüssel()
#Anzeige
print ("countByKey () Aktion auf rdd-subjects_rating:", Dictionary_rdd)
#Get die Schlüssel aus dem obigen Wörterbuch RDD
Für Schlüssel in Dictionary_RDD:
Druck (Schlüssel)

Ausgang:

countbykey () Aktion auf rdd-subjects_rating: dict_keys (['python', 'javascript', 'linux', 'c#'])
Python
JavaScript
Linux
C#

Wir können sehen, dass nur der Schlüssel zurückgegeben wird.

countbykey () action mit Werten ()

Wenn Sie nur Gesamtwerte pro Schlüssel zurückgeben müssen, verwendet die Aktion von countbykey () die Methode Values ​​().

Syntax:

Pace_rdd.countbyey ().Werte()

Wo, pepleddd ist das Paar RDD.

Es gibt die Anzahl der Werte pro Schlüssel im Format zurück - dict_items ([Wert,…])

Wir können eine für die Schleife verwenden, um die Werte zu durchschleifen.

Beispiel:

In diesem Beispiel haben wir ein Paar RDD mit dem Namen Subjekts erstellt, das mit 6 Schlüsselwertpaaren und angewandte Aktionen () mit VALUTS () darauf angewendet wurde, um nur Werte zu erhalten. Schließlich zeigen wir tatsächliche Aktionen und verwenden eine für die Schleife.

#Amportieren Sie das PYSPARK -Modul
pysspark importieren
#import SparkSession für die Erstellung einer Sitzung
aus pysspark.SQL Import SparkSession
# RDD aus PYSPARK importieren.RDD
aus pysspark.RDD Import RDD
#create eine App namens LinuxHint
Spark_app = SparkSession.Erbauer.AppName ('LinuxHint').Getorcreate ()
# Erstellen Sie 6 - Betreff- und Bewertungspaare
Subjekte_RATE = Spark_App.SparkContext.Parallelize ([('Python', 4), ('JavaScript', 2), ('Linux', 5), ('C#', 4), ('JavaScript', 4), ('Python', 3) ]))
#Apply countByKey () Aktion auf dem obigen Subjekts_rating -Paar RDD, um Werte zu erhalten
Dictionary_RDD = Subjekts_rating.countbyey ().Werte()
#Anzeige
print ("countByKey () Aktion auf rdd-subjects_rating:", Dictionary_rdd)
#Die Werte aus der obigen Wörterbuch -RDD
Für Werte in Dictionary_RDD:
Druck (Werte)

Ausgang:

countbykey () Aktion auf rdd-subjects_rating: dict_values ​​([2, 2, 1, 1])
2
2
1
1

Wir können sehen, dass nur die Gesamtwerte zurückgegeben werden.

Abschluss

In diesem PYSPARK RDD -Tutorial haben wir gesehen. Es wurde die Methode () () verwendet, um die Tasten zurückzugeben, die mit totalem Auftreten (Wert) verfügbar sind (Wert). Wenn Sie nur einen Schlüssel benötigen, können Sie die Keys () -Methode mit countByKey () verwenden und wenn Sie nur Wertschöpfung benötigen, können Sie mit countbyey () Werte verwenden ().