Я пытаюсь использовать функцию SparkContext.binaryFiles для обработки набора ZIP-файлов.Настройка состоит в том, чтобы отобразить из RDD имен файлов, в котором функция отображения использует функцию binaryFiles.
Проблема состоит в том, что SparkContext упоминается в функции отображения, и я получаю эту ошибку.Как это исправить?
PicklingError: Не удалось сериализовать объект: Исключение: Похоже, что вы пытаетесь сослаться на SparkContext из широковещательной переменной, действия или преобразования.SparkContext может использоваться только в драйвере, а не в коде, который он запускает на рабочих.Для получения дополнительной информации см. SPARK-5063.
Пример кода:
file_list_rdd.map(lambda x: sc.binaryFiles("/FileStore/tables/xyz/" + x[1]))
, где file_list_rdd
- СДР (id, имя файла) кортежей.