Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Kullanıcı tanımlı tablo işlevi kaydı için sarmalayıcı. Bu örneğe tarafından spark.udtferişilebilir.
Sözdizimi
# Access through SparkSession
spark.udtf
Methods
| Yöntem | Açıklama |
|---|---|
register(name, f) |
Python kullanıcı tanımlı tablo işlevini SQL tablo işlevi olarak kaydeder. |
Notlar
Spark, kayıtlı işlevin dönüş türü olarak verilen kullanıcı tanımlı tablo işlevinin dönüş türünü kullanır.
Tanımsız bir Python tablo işlevini kaydetmek için, önce kullanıcı tanımlı olmayan bir tablo işlevi oluşturun ve ardından bunu bir SQL işlevi olarak kaydedin.
Örnekler
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)]