Condividi tramite


Funzioni definite dall'utente in Databricks Connect per Python

Nota

Questo articolo illustra Databricks Connect per Databricks Runtime 13.1 e versioni successive.

Questo articolo descrive come eseguire UDF (funzioni definite dall'utente) con Databricks Connect per Python. Databricks Connect consente di connettere gli IDE, i server notebook e le applicazioni personalizzate più diffusi ai cluster Azure Databricks. Per la versione Scala di questo articolo, vedere Funzioni definite dall'utente in Databricks Connect per Scala.

Nota

Prima di iniziare a usare Databricks Connect, è necessario configurare il client Databricks Connect.

Databricks Connect per Python supporta funzioni definite dall'utente. Quando viene eseguita un'operazione su un Dataframe che include UDF, le UDF coinvolte vengono serializzate da Databricks Connect e inviate al server come parte della richiesta.

Nota

Poiché la funzione definita dall'utente viene serializzata e deserializzata, la versione di Python usata dal client deve corrispondere alla versione di Python nel cluster Azure Databricks. Per controllare la versione di Python del cluster, vedere la sezione «Ambiente di sistema» per la versione di Databricks Runtime del cluster nelle note di rilascio di Databricks Runtime e la compatibilità.

Il programma Python seguente configura una semplice funzione definita dall'utente che quadrati i valori in una colonna.

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()