【问题标题】:How to implement a generic encoder? [duplicate]如何实现通用编码器? [复制]
【发布时间】:2016-12-15 00:32:23
【问题描述】:

我想实现一个通用编码器,因为我在 Spark 1.6 上有一个小项目,当我将它迁移到 spark 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.

在很多地方,因此我想实现一个通用编码器并将其放入包对象中。我只想知道如何在 spark 2.0 中实现通用编码器?

【问题讨论】:

标签: scala apache-spark apache-spark-sql encoder


【解决方案1】:

开发自定义编码器通常从org.apache.spark.sql.Encoders 对象组合现有编码器开始。

请注意,Spark 中的许多地方都会检查使用的编码器是否是 ExpressionEncoder 的实例(即 SparkSession.createDataset),因此您可能需要查看表达式编码器作为自定义开发的基础。

【讨论】:

    猜你喜欢
    • 2012-11-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-13
    • 1970-01-01
    • 2023-03-16
    • 1970-01-01
    相关资源
    最近更新 更多