Scala中可以传递给UDF的参数数量

Posted

技术标签:

【中文标题】Scala中可以传递给UDF的参数数量【英文标题】:Number of parameters that can be passed to an UDF in Scala 【发布时间】:2016-07-20 19:14:37 【问题描述】:

Scala 中可以传递给 UDF 的参数数量是否有限制?

【问题讨论】:

【参考方案1】:

是的,有 22 个参数的硬性限制。您可以查看UDFRegistration 以了解register 方法的不同变体以及ScalaUDF 是如何生成的。

【讨论】:

【参考方案2】:

如果你的意思是参数的数量只有三个,如果你查看UserDefinedFunction的文档,你会注意到这些参数是:

f: AnyRef, dataType: DataType, inputTypes: Seq[DataType] = 不可变的.this.Nil

另一方面,如果您指的是可以传递给匿名函数的参数数量,这是第一个参数,您可以在UDFRegistration 进行检查。

【讨论】:

以上是关于Scala中可以传递给UDF的参数数量的主要内容,如果未能解决你的问题,请参考以下文章

pyspark udf 的可变参数数量

spark UDF 怎么实现参数数量可变,不传参时候,有默认值。见下图?

Scala:可变参数 UDF

UDF:处理范围和可变数量的参数

扩展 Lua:检查传递给函数的参数数量

获取传递给具有未知数量参数的方法的参数数量