Benutzerdefinierte Funktionen in Databricks Connect für Python
Hinweis
Dieser Artikel behandelt Databricks Connect für Databricks Runtime Version 13.1 und höher.
In diesem Artikel wird beschrieben, wie Sie UDFs mit Databricks Connect für Python verwenden. Mit Databricks Connect können Sie beliebte IDEs, Notebookserver und benutzerdefinierte Anwendungen mit Azure Databricks-Clustern verbinden. Die Scala-Version dieses Artikels finden Sie unter Benutzerdefinierte Funktionen in Databricks Connect für Scala.
Hinweis
Bevor Sie beginnen, Databricks Connect zu verwenden, müssen Sie den Databricks Connect-Client einrichten.
Databricks Connect für Python unterstützt benutzerdefinierte Funktionen (UDF). Wenn ein Dataframe-Vorgang ausgeführt wird, der UDFs enthält, werden die beteiligten UDFs von Databricks Connect serialisiert und als Teil der Anforderung an den Server gesendet.
Hinweis
Da die benutzerdefinierte Funktion serialisiert und deserialisiert wird, muss die vom Client verwendete Python-Version mit der Python-Version im Azure Databricks-Cluster übereinstimmen. Weitere Informationen zur Überprüfung der Python-Version des Clusters finden Sie unter Versionshinweise zu Databricks Runtime-Versionen und -Kompatibilität im Abschnitt „Systemumgebung“ für die Databricks RuntimeVersion des Clusters.
Das folgende Python-Programm richtet eine einfache UDF ein, die Werte in einer Spalte quadratiert.
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()