我试图通过酸洗它来序列化Spark RDD,并将pickled文件直接读入Python。酸洗Spark Spark RDD并将它读入Python
a = sc.parallelize(['1','2','3','4','5'])
a.saveAsPickleFile('test_pkl')
然后我将test_pkl文件复制到我的本地。我如何直接将它们读入Python?
pickle.load(open('part-00000','rb'))
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/lib64/python2.6/pickle.py", line 1370, in load
return Unpickler(file).load()
File "/usr/lib64/python2.6/pickle.py", line 858, in load
dispatch[key](self)
File "/usr/lib64/python2.6/pickle.py", line 970, in load_string
raise ValueError, "insecure string pickle"
ValueError: insecure string pickle
我认为火花采用酸洗法比蟒蛇咸菜方法不同(正确的是:当我尝试正常咸菜包,当我试图读取“test_pkl”的第一个泡菜部分失败我如果我错了)。有什么办法让我从Spark中腌制数据,并从文件中直接将这个pickle对象读入python中?
问题是,它不是一个咸菜文件,而是一个[SequenceFile(https://wiki.apache.org/hadoop/SequenceFile)含有腌对象,我不知道有任何积极发展解析器用于Python中的SequenceFiles。 – zero323