【发布时间】:2017-03-28 13:21:02
【问题描述】:
从 spark 2.0.1 开始我有一些问题。我阅读了很多文档,但到目前为止找不到足够的答案:
- 两者有什么区别
df.select("foo")df.select($"foo")
- 我是否理解正确
-
myDataSet.map(foo.someVal)是类型安全的,不会转换为RDD,但会保留在 DataSet 表示/没有额外开销(2.0.0 的性能明智)
-
- 所有其他命令,例如select, .. 只是语法糖。它们不是类型安全的,可以使用映射。如果没有 map 语句,我怎么能
df.select("foo")类型安全?- 为什么我应该使用 UDF / UADF 而不是地图(假设地图保留在数据集表示中)?
【问题讨论】:
-
有一个项目旨在为 Spark 提供更多类型安全性,同时保持高效执行路径:typelevel/frameless
标签: scala apache-spark apache-spark-sql apache-spark-dataset apache-spark-2.0