Ich versuche, das folgende Problem mit pyspark zu lösen. Ich habe eine Datei auf hdfs im Format, das ein Dump der Nachschlagetabelle ist.Erstellen eines großen Wörterbuchs in pyspark
Ich möchte dies in Python-Wörterbuch in Pyspark laden und für einen anderen Zweck verwenden. Also habe ich versucht zu tun:
table = {}
def populateDict(line):
(k,v) = line.split(",", 1)
table[k] = v
kvfile = sc.textFile("pathtofile")
kvfile.foreach(populateDict)
Ich fand, dass Tabellenvariable nicht geändert wird. Also, gibt es eine Möglichkeit, eine große inhemory hashtable im Funken zu erstellen?
Cool danke. Bedeutet dies, dass die Karte in den Speicher des Fahrers passen muss? Oder ist es noch verteilt? – Kamal
@Kamal ja es muss in mem passen. U könnte das Paar rdd als Nachschlagetabelle verwenden. Auch an eine Lösung mit akkumulierbar gedacht, wird bald – aaronman
in Ordnung bringen. Ich suchte nach einer verteilten Karte in Spark. Sieht so aus als wäre es nicht möglich! – Kamal