1

从评论看来:

可变容器对象的父类,在更改值时重用,从而减少垃圾。

一种包含数组专用容器对象的行类型,类型为 MutableValue,根据每列的数据类型选择。目的是在修改原始列的值时减少垃圾。

来源 - https://github.com/apache/spark/blob/master/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/SpecificMutableRow.scala

谁能解释它是如何有效的?仅仅是它避免拳击的事实就足够了吗?

4

1 回答 1

2

它避免了存储中的装箱,但这在与另一个特定接口(即 parquet 阅读器或代码生成的表达式评估)结合使用时非常有用。

另一个优点是它可以重复使用(与通用行不同)。因此,对于许多操作,它可以在不分配任何对象的情况下对一系列数据进行操作。

于 2015-03-25T00:33:15.130 回答