Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Wrapper para registo de funções de tabela definidas pelo utilizador. Esta instância pode ser acedida por spark.udtf.
Sintaxe
# Access through SparkSession
spark.udtf
Methods
| Método | Descrição |
|---|---|
register(name, f) |
Regista uma função de tabela definida pelo utilizador em Python como uma função de tabela SQL. |
Notes
O Spark utiliza o tipo de retorno da função de tabela definida pelo utilizador como o tipo de retorno da função registada.
Para registar uma função de tabela Python não determinística, primeiro constrói uma função de tabela não determinística definida pelo utilizador e depois regista-a como uma função SQL.
Exemplos
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)]