Databricks Connect for Python のユーザー定義関数
この記事では、Databricks Runtime 13.1 以降の Databricks Connect について説明します。
この記事では、Databricks Connect for Python を使用して UDF を実行する方法について説明します。 Databricks Connect を使用すると、一般的な IDEs、ノートブック サーバー、およびカスタム アプリケーションを Databricks クラスターに接続できます。 この記事の Scala バージョンについては、「 Databricks Connect for Scala のユーザー定義関数」を参照してください。
Databricks Connect の使用を開始する前に、 Databricks Connect クライアントを設定する必要があります。
Databricks Connect for Python は、ユーザー定義関数 (UDF) をサポートしています。 UDF を含む Dataframe 操作が実行されると、関連する UDF は Databricks Connect によってシリアル化され、要求の一部としてサーバーに送信されます。
ユーザー定義関数はシリアル化および逆シリアル化されるため、クライアントで使用される Pythonバージョンは、 クラスターのPython バージョンと一致する必要があります。Databricksクラスターの バージョンを確認するには、PythonDatabricks Runtime Databricks Runtimeリリースノートのバージョンと互換性の クラスターの バージョンの「システム環境」セクションを参照してください。
次の Python プログラムは、列の値を 2 乗する単純な 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()