您可以編寫自訂函數並在MaxCompute SQL中使用它們。
基本操作
list_functions()
:擷取專案空間下的所有函數。exist_function()
:用於判斷是否存在某個函數。get_function()
:用於擷取函數對象。create_function()
:建立函數。delete_function()
:刪除函數。
建立函數
使用入口對象的
create_function()
方法即可建立函數。舉例如下。
# 引用當前project中的資源。
resource = o.get_resource('my_udf.py')
function = o.create_function('test_function', class_type='my_udf.Test', resources=[resource])
# 引用其他project中的資源。
resource2 = o.get_resource('my_udf.py', project='another_project')
function2 = o.create_function('test_function2', class_type='my_udf.Test', resources=[resource2])
刪除函數
使用入口對象的delete_function()
方法即可刪除函數,也可以使用函數對象調用drop
方法刪除函數。舉例如下。
o.delete_function('test_function')
function.drop() # Function對象存在時直接調用drop方法。
更新函數
對函數調用update
方法即可更新函數。舉例如下。
function = o.get_function('test_function')
new_resource = o.get_resource('my_udf2.py')
function.class_type = 'my_udf2.Test'
function.resources = [new_resource, ]
function.update() # 更新函數。