Udostępnij za pośrednictwem


Funkcje zdefiniowane przez użytkownika w narzędziu Databricks Connect dla języka Python

Notatka

W tym artykule opisano program Databricks Connect dla środowiska Databricks Runtime 13.1 lub nowszego.

W tym artykule opisano sposób wykonywania funkcji zdefiniowanych przez użytkownika (UDF) za pomocą programu Databricks Connect dla języka Python. Databricks Connect umożliwia łączenie popularnych środowisk IDE, serwerów notatników i aplikacji niestandardowych z klastrami Azure Databricks. Aby zapoznać się z wersją tego artykułu dla języka Scala, zobacz funkcje zdefiniowane przez użytkownika w programie Databricks Connect dla Scali.

Notatka

Przed rozpoczęciem korzystania z usługi Databricks Connect należy skonfigurować klienta usługi Databricks Connect.

Program Databricks Connect dla języka Python obsługuje funkcje zdefiniowane przez użytkownika (UDF). Gdy wykonywana jest operacja DataFrame obejmująca UDF-y, zaangażowane funkcje są serializowane przez usługę Databricks Connect i wysyłane do serwera w ramach żądania.

Notatka

Ponieważ funkcja zdefiniowana przez użytkownika jest serializowana i deserializowana, wersja języka Python używana przez klienta musi być zgodna z wersją języka Python w klastrze usługi Azure Databricks. Aby sprawdzić wersję języka Python klastra, zobacz sekcję "Środowisko Systemu" dla wersji środowiska Databricks Runtime klastra w uwagach dotyczących wersji i zgodności Databricks Runtime.

Poniższy program w języku Python konfiguruje prostą funkcję zdefiniowanej przez użytkownika, która kwadratuje wartości w kolumnie.

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