Compartir a través de


UDTFRegistration

Contenedor para el registro de funciones de tabla definidas por el usuario. Se puede acceder a esta instancia mediante spark.udtf.

Sintaxis

# Access through SparkSession
spark.udtf

Methods

Método Descripción
register(name, f) Registra una función de tabla definida por el usuario de Python como una función de tabla SQL.

Notas

Spark usa el tipo de valor devuelto de la función de tabla definida por el usuario determinada como el tipo de valor devuelto de la función registrada.

Para registrar una función de tabla de Python no determinista, cree primero una función de tabla definida por el usuario no determinista y, a continuación, regístrela como una función SQL.

Ejemplos

from pyspark.sql.functions import udtf

@udtf(returnType="c1: int, c2: int")
class PlusOne:
    def eval(self, x: int):
        yield x, x + 1

_ = spark.udtf.register(name="plus_one", f=PlusOne)
spark.sql("SELECT * FROM plus_one(1)").collect()
[Row(c1=1, c2=2)]
spark.sql("SELECT * FROM VALUES (0, 1), (1, 2) t(x, y), LATERAL plus_one(x)").collect()
[Row(x=0, y=1, c1=0, c2=1), Row(x=1, y=2, c1=1, c2=2)]