/ / Quais são as vantagens do SpecificMutableRow no Spark SQL? - scala, jvm, apache-faísca, apache-spark-sql

Quais são as vantagens do SpecificMutableRow no Spark SQL? - scala, jvm, apache-faísca, apache-spark-sql

De comentários parece:

Uma classe pai para objetos contêineres mutáveis ​​que são reutilizados quando os valores são alterados, resultando em menos lixo.

e

Um tipo de linha que contém uma matriz especializadaobjetos contêineres, do tipo MutableValue, escolhidos com base nos dataTypes de cada coluna. A intenção é diminuir o lixo ao modificar o valores de colunas primitivas.

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

Alguém pode explicar como é eficaz? É apenas o fato de que evita boxe suficiente?

Respostas:

2 para resposta № 1

Evita o boxe no armazenamento, mas isto é principalmente útil quando combinado com outra interface específica (isto é, o leitor de parquet ou avaliação de expressão gerada por código).

A outra vantagem é que é reutilizado (ao contrário da linha genérica). Assim, para muitas operações, ele pode operar em um intervalo de dados sem alocar objetos.