【发布时间】:2020-11-02 18:14:11
【问题描述】:
我看到了对任何使用 spark 的人的一般性建议(在我的例子中是 Scala) 是避免任何将所有数据从执行器获取到驱动程序的操作(收集、计数、求和等)。 但是,当我尝试使用火花统计库时 http://spark.apache.org/docs/2.2.0/ml-statistics.html 我发现相关矩阵和 ChiSquareTest 方法 期望从 array\seq 获得的数组或矩阵作为它们的参数,因此我不 看看我如何避免对数据框进行收集(以及我假设的更多操作 如果我想使用此功能,请使其成为 Vectors 而不是 Row 类型)。将不胜感激。
【问题讨论】:
-
它说尽可能避免,而不是完全绕过它。需要收集操作才能获得任何相关的输出。
-
我读过,因为驱动可能会在大数据帧的情况下崩溃,不建议在生产中这样做。但是,我不确定我是否尝试在数据帧上进行许多操作,例如 groupBy 和 Joins,是不是也很昂贵?我试图了解总体上更好的方法是什么。
标签: scala dataframe apache-spark dataset