In Python ist PySpark ein Spark -Modul, das eine ähnliche Art von Verarbeitung wie Spark bietet.
Wir werden sehen, wie man eine MAP () und wie man alle Schlüssel und Werte mit map_keys () und map_values () erstellt und Werte bekommt).
MAP () kann mithilfe der SQL () -Funktion mithilfe der Auswahlabfrage erstellt werden.
Syntax:
Spark_App.SQL ("MAP (Schlüssel, Wert, ...) als MAP_NAME"))
Hier,
- Spark_App ist Out Out Spark Connecting App
- MAP () nimmt die von einem Kommas getrennte Reihenfolge der Schlüsselwertpaare auf.
- MAP_NAME ist ein Alias für die erstellte Karte.
Zunächst erstellen wir eine Karte mit 6 Schlüsselwertpaaren und zeigen sie mit Collect () -Methode an.
#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
#import map_keys () aus dem pyspark.sql.Funktionsmodul
aus pysspark.sql.Funktionen importieren map_keys
#create eine App namens LinuxHint
Spark_app = SparkSession.Erbauer.AppName ('LinuxHint').Getorcreate ()
# Erstellen Sie 6 - Betreff- und Bewertungspaare in der Karte
my_data = spark_app.SQL ("MAP (1, 'Python', 2, 'Java', 3, 'JavaScript', 4, 'Python', 5, 'Linux', 6, 'Linux') als Subjekts_rating")
#Display die Karte
meine Daten.select ('subjekts_rating').sammeln()
Ausgang:
[Row (Subjekts_Rating = 1: 'Python', 2: 'Java', 3: 'JavaScript', 4: 'Python', 5: 'Linux', 6: 'Linux')]
Hier sind die Schlüssel - 1,2,3,4,5,6 und Werte sind - 'Python', 'Java', 'JavaScript', 'Python', 'Linux', 'Linux'.
Notiz - Die Schlüssel können nicht dupliziert werden, aber die Werte können dupliziert werden.
PYSPARK - MAP_KEYS ()
map_keys () gibt alle Schlüssel aus einer Karte in einer Zeile zurück. Es nimmt MAP_NAME als Parameter.
Syntax:
map_keys ('map_name')
Parameter:
map_name ist der Name der Karte
Beispiel:
In diesem Beispiel geben wir die Kartenschlüssel für die oben erstellte Karte 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
#import map_keys () aus dem pyspark.sql.Funktionsmodul
aus pysspark.sql.Funktionen importieren map_keys
#create eine App namens LinuxHint
Spark_app = SparkSession.Erbauer.AppName ('LinuxHint').Getorcreate ()
# Erstellen Sie 6 - Betreff- und Bewertungspaare in der Karte
my_data = spark_app.SQL ("MAP (1, 'Python', 2, 'Java', 3, 'JavaScript', 4, 'Python', 5, 'Linux', 6, 'Linux') als Subjekts_rating")
#Greifen Sie die Kartenschlüssel der MAP-Subjects_rating
meine Daten.select (map_keys ('subjekts_rating')).sammeln()
Ausgang:
[Row (MAP_KEYS (Subjekts_rating) = [1, 2, 3, 4, 5, 6])]]]
Wir können sehen, dass nur MAP_KEYS zurückgegeben wurden.
Pyspark - map_values ()
map_values () gibt alle Werte aus einer Karte in einer Zeile zurück. Es nimmt MAP_NAME als Parameter.
Syntax:
map_values ('map_name')
Parameter:
map_name ist der Name der Karte
Beispiel:
In diesem Beispiel geben wir die Kartenwerte für die oben erstellte Karte 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
#import map_keys () aus dem pyspark.sql.Funktionsmodul
aus pysspark.sql.Funktionen importieren map_keys
#create eine App namens LinuxHint
Spark_app = SparkSession.Erbauer.AppName ('LinuxHint').Getorcreate ()
# Erstellen Sie 6 - Betreff- und Bewertungspaare in der Karte
my_data = spark_app.SQL ("MAP (1, 'Python', 2, 'Java', 3, 'JavaScript', 4, 'Python', 5, 'Linux', 6, 'Linux') als Subjekts_rating")
#Get die Kartenwerte der MAP-Subjects_rating
meine Daten.select (map_values ('subjekts_rating')).sammeln()
Ausgang:
[Row (map_values (Subjekts_rate) = ['Python', 'Java', 'JavaScript', 'Python', 'Linux', 'Linux']]]
Wir können sehen, dass nur MAP_VALUES zurückgegeben wurden.
Abschluss
In diesem pyspark haben wir besprochen, wie Sie MAP () und wie Sie mit Map_Keys () und MAP_VALUES () -Funktionen auf Kartenschlüssel und Werte zugreifen können. In einer Karte kann es für alle Schlüssel die gleichen Werte geben, aber der Schlüssel muss Single sein.