Конвертировать JavaRDD в JavaRDD <SomeClass> - PullRequest
0 голосов
/ 17 февраля 2020

У меня есть JavaRDD из списка объектов класса. Я хочу сгладить его в JaveRDD объектов класса, чтобы JavaRDD <{1, 2, 3, 4}, {5, 6, 7}> перешел в JavaRDD <1, 2, 3, 4, 5, 6, 7 >

в этом сообщении Преобразование списка СДР в СДР отдельного элемента в искре одно решение -

val newrdd = rdd.flatmap(line => line)

однако строка => строка - scala (I думаю) Я попытался

rdd.flatmap(line-> line)

, и это дает и ошибка

"не существует экземпляра (ов) типа переменной (ов) U, так что List соответствует итератору"

1 Ответ

1 голос
/ 17 февраля 2020

Функция , которую вы передаете flatMap, должна возвращать java.util.Iterator<T>, а не List<T>. Для этого должно быть достаточно:

JavaRDD<SomeClass> newRdd = rdd.flatMap(List::iterator);
...