文档首页/
数智融合计算服务 DataArtsFabric/
开发指南/
数智融合(Data+AI)/
DataArtsFabric DataFrame/
使用DataFrame API注册Scalar UDF/
隐式注册Scalar UDF
更新时间:2025-07-08 GMT+08:00
隐式注册Scalar UDF
隐式注册Scalar UDF,即依赖Python运行时自动发现并注册Scalar UDF。详细用法请参见Scalar UDF隐式注册语法。
- 对于Scalar Python UDF,注册Scalar Python UDF的作用是将一个原始的Python函数注册进数据库中。隐式注册的示例代码如下,传入参数说明请参见Scalar Python UDF注册参数。
import ibis_fabric as fabric from ibis_fabric.udf import RegisterType # 隐式注册UDF @fabric.udf.python(database="your-database", register_type=RegisterType.OBS) def calculate_product(price: float, quantity: int) -> float: return price * quantity # 使用UDF con = ibis.fabric.connect(...) t = con.table("your-table", database="your-database") expression = t.select(calculate_product(t.price, t.quantity).name("product column")) print(expression.execute())
- 对于Scalar Builtin UDF,注册Scalar Builtin UDF的作用是获得数据库已存在的函数的句柄,无实际注册的操作。隐式注册的示例代码如下,传入参数说明请参见Scalar Builtin UDF注册参数。
import ibis import ibis_fabric as fabric # 隐式注册UDF,数据库中已有power函数 @fabric.builtin.python(database="your-database") def power(a: float, b: float) -> float: ... # 使用UDF con = ibis.fabric.connect(...) t = con.table("your-table", database="your-database") expression = t.select(power(t.interest, t.interval).name("yield column")) print(expression.execute())