Sto cercando di risolvere il seguente problema utilizzando pyspark. Ho un file su hdfs nel formato che è un dump della tabella di ricerca.Creazione di un dizionario di grandi dimensioni in pyspark
key1, value1
key2, value2
...
Voglio caricare questo nel dizionario python in pyspark e usarlo per qualche altro scopo. Così ho provato a fare:
table = {}
def populateDict(line):
(k,v) = line.split(",", 1)
table[k] = v
kvfile = sc.textFile("pathtofile")
kvfile.foreach(populateDict)
Ho trovato che la variabile di tabella non viene modificata. Quindi, c'è un modo per creare un grande hash inmemory nella scintilla?
Cool grazie. Ciò significa che la mappa deve adattarsi alla memoria del conducente? O è ancora distribuito? – Kamal
@Kamal si deve adattarsi a mem. U potrebbe usare pair rdd come tabella di ricerca. Anche pensato a una soluzione con cumulabile, posterò presto – aaronman
Ok. Stavo cercando una mappa distribuita in scintilla. Sembra che non sia possibile! – Kamal