Я пытаюсь изучить Pyspark, и я не могу запустить основную программу, и я не могу понять, в чем проблема. когда я пытаюсь вызвать сбор на м он печатает, как положено положить не могу вызвать сбор на с.
import findspark
findspark.init()
from pyspark.sql import SparkSession
from pyspark import SparkContext
from array import array
from functools import reduce
import numpy as np
from __future__ import print_function
sc = SparkContext.getOrCreate()
def f(x):
temp = {}
y=0
for i in range(0, len(x)):
for j in range( i+1 , len(x)):
if( x[i][0] == x[j][0]):
#print(j,i)
y = y+1
temp2 = {x[i][0]: y}
if x[i][0] in temp.keys():
y=0
continue
temp.update(temp2)
y=0
return temp
t = (("Tim","bob") , ("kevin", "bob") , ("viki", "tom") , ("mahesh" , "viki") , ("ramesh", "tom") )
rdd = sc.parallelize(t)
m = rdd.map(lambda x : (x[1],x[0]))
s = m.reduceByKey(lambda x: x)
print(s.collect())
#s = m.collect()
sc.stop()
Py4JJavaError: Произошла ошибка при вызове z: org.apache.spark.api.python.PythonRDD.collectAndServe. : org.apache.spark.SparkException: задание прервано из-за сбоя этапа: задание 1 на этапе 2.0 не выполнено 1 раз, последний сбой: потерянное задание 1.0 на этапе 2.0 (TID 3, localhost, драйвер исполнителя): org.apache.spark.api.python.PythonException: трассировка (последний вызов был последним): файл "/content/spark-2.4.4-bin-hadoop2.7/python/lib/pyspark.zip/pyspark/worker.py", строка 377,в основном процессе ()