как применить функцию фильтра к org.apache.spark.rdd.RDD [Array [Byte]] - PullRequest
0 голосов
/ 17 сентября 2018

После использования искры для загрузки экономичных файлов:

val rdd1 = sc.newAPIHadoopFile[LongWritable,BinaryWritable[Array[Byte]],
        MultiInputFormat[Array[Byte]]]("s3://spark-tst/test/input/").map(_._2.get()), 

Я получил СДР в формате org.apache.spark.rdd.RDD[Array[Byte]]. Теперь мне нужно применить функцию фильтра к этим СДР, но получил "org.apache.spark.SparkException: Task not serializable". Если ввести промежуточный rdd "val s = rdd1.collect.toList", тогда функция фильтра может применяться к СДР; но «собирать» не подходит для случая с большим количеством файлов. Другая проблема заключается в том, что при изменении фильтра данные также должны записываться обратно в s3 в исходном экономном формате.
Ценю любую помощь / предложения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...