PYSPARK RDD - Subtrahieren, unterschiedlich

PYSPARK RDD - Subtrahieren, unterschiedlich
In Python ist PySpark ein Spark -Modul, mit dem eine ähnliche Art von Verarbeitung wie Spark mit DataFrame bereitgestellt wird.

RDD steht für widerstandsfähige verteilte Datensätze. Wir können RDD als grundlegende Datenstruktur in Apache Spark bezeichnen. Es speichert die Daten in Form von Zeilen und Spalten wie einem Datenrahmen.

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

Um Daten oder einen Datenrahmen zu erstellen, müssen wir in pyspark die parallelize () -Methode verwenden.

Syntax:

Spark_App.SparkContext.parallelisieren (Daten)

Dabei können Daten eine eindimensionale (lineare Daten) oder zweidimensionale Daten (Zeilen-Säulen-Daten) sein.

In diesem Tutorial werden wir über die PYSPARK RDD Subtractract () und Distrible () Operations sehen.

PYSPARK RDD - Subtrahiert ()

subtrahieren() In RDD ähnelt der Set -Differenzvorgang, der die neue RDD zurückgibt, die die im ersten RDD vorhandenen Elemente enthält, aber im zweiten RDD nicht vorhanden ist.

Wir brauchen also zwei RDDs, um diesen Vorgang durchzuführen.

Syntax:

Rdd_data1.Subtrahieren (rdd_data2)

Wo:

  1. Rdd_data1 ist die erste rdd
  2. Rdd_data2 ist das zweite rdd.

Beispiel 1:

In diesem Beispiel werden wir zwei RDD mit numerischen Daten erstellen - Subjekts_1 und Subjekts_2 und subtract () auf zwei RDDs durchführen.

#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 ()
# 5 - Betreffmarken erstellen
Subjekts_1 = Spark_App.SparkContext.parallelisieren ([100,34,56,54,45])
#Display subjets_1 Rdd
print ("Subjekts_1 RDD:", Subjekts_1.sammeln())
# 5 - Betreffmarken erstellen
Subjekts_2 = Spark_App.SparkContext.parallelisieren ([90,89,34,56,45])
#Display subjets_2 RDD
print ("Subjekts_2 RDD:", Subjekts_2.sammeln())
#perform subtract () operation über zwei RDDs
print ("subtract () operation auf themen_1 mit Subjekts_2:", subjekts_1.Subtrahieren (Subjekts_2).sammeln())
#perform subtract () operation über zwei RDDs
print ("subtract () operation auf themen_2 mit Subjekts_1:", subjekts_2.Subtrahieren (Subjekts_1).sammeln())

Ausgang:

Subjekts_1 RDD: [100, 34, 56, 54, 45]
Subjekts_2 RDD: [90, 89, 34, 56, 45]
Subtract () Operation zu Subjekts_1 mit Probanden_2: [100, 54]
Subtract () Operation zu Subjekts_2 mit Probanden_1: [89, 90]

Aus der Ausgabe können wir sehen, dass es 5 Elemente in den RDDs gibt.

In der ersten Operation subtrahieren wir mit Subjekts_2 zu Subjekts_1. Hier sind 100 und 54 in Subjekts_1 vorhanden, aber nicht in Subjekts_2. Sie wurden also zurückgegeben.

In der zweiten Operation führen wir Subtraktion auf Subjekts_2 mit Subjekts_1 durch. Hier sind 89 und 90 in Subjekten_2 vorhanden, jedoch nicht in Subjekten_1. Sie wurden also zurückgegeben.

Beispiel 2:

In diesem Beispiel werden wir zwei RDD mit String -Daten erstellen - Subjekts_1 und Subjekts_2 und subtract () auf zwei RDDs durchführen.

#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 ()
# Create 3 - Betreff Namen
Subjekts_1 = Spark_App.SparkContext.parallelisieren (["Linux", "Bash", "JavaScript"])
#Display subjets_1 Rdd
print ("Subjekts_1 RDD:", Subjekts_1.sammeln())
# erstellen 2 - Betreff Namen
Subjekts_2 = Spark_App.SparkContext.parallelisieren (["Linux", "Java"])
#Display subjets_2 RDD
print ("Subjekts_2 RDD:", Subjekts_2.sammeln())
#perform subtract () operation über zwei RDDs
print ("subtract () operation auf themen_1 mit Subjekts_2:", subjekts_1.Subtrahieren (Subjekts_2).sammeln())
#perform subtract () operation über zwei RDDs
print ("subtract () operation auf themen_2 mit Subjekts_1:", subjekts_2.Subtrahieren (Subjekts_1).sammeln())

Ausgang:

Subjekts_1 RDD: ['Linux', 'Bash', 'JavaScript']
Subjekts_2 RDD: ['Linux', 'Java']
Subtract () Operation auf Subjekts_1 mit Subjekts_2: ['Bash', 'JavaScript']
Subtract () Operation zu Subjekts_2 mit Subjekts_1: ['Java']

Aus der Ausgabe können wir sehen, dass es 5 Elemente in den RDDs gibt.

In der ersten Operation führen wir die Subtraktion auf Subjekts_1 mit Subjekts_2 durch. Hier sind 'Bash' und 'JavaScript' in themen_1 vorhanden, aber nicht in Subjekts_2. Sie wurden also zurückgegeben.

In der zweiten Operation subtrahieren wir mit Subjekts_1 zu Subjekts_2. Hier ist 'Java' in themen_2 vorhanden, aber nicht in Subjekten_1. Es wird also zurückgegeben.

PYSPARK RDD - DIRTIONEN ()

unterscheidbar() in RDD wird verwendet, um nur eindeutige Werte von RDD zurückzugeben. Es wird nur auf einen RDD angewendet

Wir brauchen also eine RDD, um diesen Vorgang auszuführen. Es dauert keine Parameter.

Syntax:

Rdd_data.unterscheidbar()

Wo, rdd_data1 ist die erste RDD.

Beispiel 1:

In diesem Beispiel erstellen wir eine RDD -Subjekts_1 mit 10 numerischen Werten und geben eindeutige Werte zurück.

#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 ()
# 10 - Betreffmarken erstellen
Subjekts_1 = Spark_App.SparkContext.parallelisieren ([34,56,54,45,45,56,54,4,3,3])
#Display subjets_1 Rdd
print ("Subjekts_1 RDD:", Subjekts_1.sammeln())
#performieren.
print ("distrient () operation auf fixs_1:", fixs_1.unterscheidbar().sammeln())

Ausgang:

Subjekts_1 RDD: [34, 56, 54, 45, 45, 56, 54, 4, 3, 3]
DISTECTION () Operation zu Probanden_1: [34, 56, 54, 4, 45, 3]

Wir haben eine RDD mit 10 Ganzzahlwerten erstellt, die Duplikate enthalten. Nachdem wir Different () angewendet haben, um nur eindeutige Werte zurückzugeben.

Beispiel 2:

In diesem Beispiel erstellen wir eine RDD -Subjekts_1 mit 5 Stringwerten und geben eindeutige Werte zurück.

#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 ()
# 5 - Themen erstellen
Subjekts_1 = Spark_App.SparkContext.Parallelisieren (['Java', 'Java', 'Python', 'JavaScript', 'JavaScript'])
#Display subjets_1 Rdd
print ("Subjekts_1 RDD:", Subjekts_1.sammeln())
#performieren.
print ("distrient () operation auf fixs_1:", fixs_1.unterscheidbar().sammeln())

Ausgang:

Subjekts_1 Rdd: ['Java', 'Java', 'Python', 'JavaScript', 'JavaScript']
Unterschied () Operation zu Themen_1: ['Java', 'Python', 'JavaScript']

Wir haben eine RDD mit 5 Stringwerten erstellt, die Duplikate enthalten. Danach haben wir bestimmte () nur eindeutige Werte zurückgegeben. Die zurückgegebenen eindeutigen Werte sind - Java, Python und JavaScript.

Abschluss

In diesem PYSPARK RDD -Tutorial haben wir Subtract () und verschiedene () Methoden diskutiert.subtract () wie auf zwei RDDs angewendet. Es wird verwendet, um die im ersten RDD vorhandenen Elemente zurückzugeben, aber nicht im zweiten vorhanden. RDD.Curthip () wird auf Single RDD angewendet, mit dem einzigartige Elemente aus der RDD zurückgegeben werden.