更新时间:2025-08-25 GMT+08:00

Scalar UDF类型

对于DataArtsFabric DataFrame,目前提供Python端可以注册的Scalar UDF类型如下:

表1 Scalar UDF类型

Scalar UDF类型

输入类型

是否向量化

适用场景与特点

python

Python标量值

逐行处理数据,适用于简单或特定的计算,但性能较低。

builtin

后端支持的类型

直接调用数据库后端已存在的函数,适用于利用数据库原生功能的场景。

pandas

pandas.Series

利用Pandas的矢量化操作,适用于需要在Python层进行复杂数据处理的场景。

pyarrow

pyarrow.Array

利用PyArrow的高性能计算能力,适用于需要处理大型数据集或进行高效计算的场景。

对于Scalar UDF,目前只实现了python、builtin类型,后续版本会有修改调整,添加pyarrow、pandas等类型。

Scalar UDF的设计总原则是:用户本身的Python函数在无数据库参与的情况下可以正确运行,为了靠近原始数据/追求更好的性能而使用了数据库的UDF特性,尽可能减少用户为了使用UDF而修改原始代码的工作量。