Как хранить пользовательские объекты в наборе данных?

В соответствии сПредставляем наборы данных Spark:

В преддверии Spark 2.0 мы планируем несколько интересных улучшений в наборах данных, в частности: ... Пользовательские кодировщики - в то время как в настоящее время мы автоматически генерируем кодировщики для широкого спектра типов, мы хотели бы открыть API для пользовательских объектов.

и пытается сохранить пользовательский тип вDataset привести к следующей ошибке вроде:

Невозможно найти кодировщик для типа, хранящегося в наборе данных. Примитивные типы (Int, String и т. Д.) И типы Product (классы дел) поддерживаются путем импорта sqlContext.implicits._ Поддержка сериализации других типов будет добавлена ​​в будущих выпусках.

или же:

Java.lang.UnsupportedOperationException: не найден кодировщик для ....

Существуют ли обходные пути?

Обратите внимание, что этот вопрос существует только в качестве отправной точки для ответа сообщества Wiki. Не стесняйтесь обновлять / улучшать как вопрос, так и ответ.

Ответы на вопрос(8)

Ваш ответ на вопрос