2016-08-09 3 views
0

Я хочу осуществить общий кодировщик, потому что у меня есть небольшой проект на Спарк 1.6 и когда я перенести его на искру 2.0 его дать мне предупреждение и ошибку изКак реализовать общий кодер?

Unable to find encoder for type stored in a Dataset. Primitive types (Int, String, etc) and Product types (case classes) are supported by importing spark.implicits._ Support for serializing other types will be added in future releases. 

во многих местах, следовательно, я хочу реализовать общий кодер и поместить его в объект пакета. Я просто хочу знать, как я могу реализовать общий Encoder в искровом 2.0?

+0

Это просто черта http://spark.apache.org/docs/latest/api/scala/index.html#org.apache.spark.sql.Encoder – Alec

ответ

2

Разработка пользовательских кодеров обычно начинается с составления существующих кодеров от org.apache.spark.sql.Encoders объекта.

Обратите внимание, что многие места в Spark проверяют, является ли используемый кодер экземпляром ExpressionEncoder (т. Е. SparkSession.createDataset), поэтому вы можете просмотреть кодеры выражений в качестве основы для пользовательской разработки.

Смежные вопросы