【发布时间】:2016-01-20 17:28:13
【问题描述】:
我有一个 UDT(用户定义类型)。我想在 Spark SQL 表达式中使用它,例如UDT 名称 * 10.3。我的 UDT 不仅仅是一个简单的数字,它是一个复杂的类型,它有自己的 +-/* 覆盖函数。我无法使用标准 scala 类型实现我想要的逻辑。
我尝试在 Spark 1.6.0 的 Spark SQL 表达式中使用它并得到以下结果:
由于数据类型不匹配,无法解析“(UDTName * 10.0)”:“(udttype * 10.0)”中的类型不同(udttype 和 double)。;
Spark 是否支持此操作?我可以在表达式中使用 UDT 吗?我应该做些什么特别的事情来告诉 Spark SQL 我有可用于这种类型的 +-*/ 操作?
【问题讨论】:
标签: apache-spark apache-spark-sql spark-dataframe