共用方式為


適用於 Python 的 Databricks 連線 中使用者定義的函式

注意

本文涵蓋 Databricks 連線 Databricks Runtime 13.1 和更新版本。

本文說明如何使用適用於 Python 的 Databricks 連線 執行 UDF。 Databricks 連線 可讓您將熱門 IDE、Notebook 伺服器和自定義應用程式連線至 Azure Databricks 叢集。 如需本文的 Scala 版本,請參閱適用於 Scala 的 Databricks 連線 中的使用者定義函式。

注意

開始使用 Databricks 連線 之前,您必須先設定 Databricks 連線 用戶端

適用於 Python 的 Databricks 連線 支援使用者定義函式 (UDF)。 執行包含 UDF 的 Dataframe 作業時,涉及的 UDF 會由 Databricks 串行化 連線,並在要求中傳送至伺服器。

注意

由於使用者定義的函式已串行化和還原串行化,用戶端所使用的 Python 版本必須符合 Azure Databricks 叢集上的 Python 版本。 若要檢查叢集的 Python 版本,請參閱 Databricks Runtime 版本資訊版本和相容性叢集 Databricks Runtime 版本的一節。

下列 Python 程式會設定簡單的 UDF,以將數據行中的值平方。

from pyspark.sql.functions import col, udf
from pyspark.sql.types import IntegerType
from databricks.connect import DatabricksSession

@udf(returnType=IntegerType())
def double(x):
    return x * x

spark = DatabricksSession.builder.getOrCreate()

df = spark.range(1, 2)
df = df.withColumn("doubled", double(col("id")))

df.show()