问题描述
在Spark sql中,Schema
有limited DataType
s,还有limited Encoder
s用于将JVM对象与内部Spark sql表示形式相互转换。
- 实际上,我们可能会遇到与
DataType
有关的此类错误,通常会在带有自定义类型的DataFrame
中发生,而在Dataset[T]
中具有但不是自定义类型。对DataType
(或UDT
)的讨论指向How to define schema for custom type in Spark SQL?
- 实际上,我们可能会遇到与
Encoder
有关的此类错误,通常会在带有自定义类型的Dataset[T]
中发生,而在DataFrame
中具有但不是自定义类型。对Encoder
的讨论指向How to store custom objects in Dataset?
无法找到数据集中存储的类型的编码器。导入sqlContext.implicits支持基本类型(Int,String等)和产品类型(案例类)。_在将来的版本中将添加对序列化其他类型的支持
据我了解,两者都涉及内部Spark sql优化器(这就是为什么仅提供有限数量的DataType
和Encoder
的原因);然后DataFrame
和Dataset
都只是Dataset[A]
。
问题(或更多..混乱)
本文的主要目的是在这两个概念中进行更多的探索,并吸引公开讨论,因此,如果问题不太具体,请耐心等待。并感谢您分享理解。谢谢。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)