我在代码仓库中看到了 ctx 的使用,这到底是什么?它是内置库吗?我什么时候使用它?
我在以下示例中看到了它:
df = ctx.spark.createdataframe(...
我在代码仓库中看到了 ctx 的使用,这到底是什么?它是内置库吗?我什么时候使用它?
我在以下示例中看到了它:
df = ctx.spark.createdataframe(...
对于代码存储库转换,您可以选择包含一个参数,该参数ctx
使您可以更多地访问运行您的作业的底层基础架构。通常,您将访问用于从 Python 对象ctx.spark_session
创建自己的对象的属性,例如:pyspark.sql.Dataframe
from transforms.api import transform_df, Output
from pyspark.sql import types as T
@transform_df(
Output=("/my/output")
)
def my_compute_function(ctx):
schema = T.StructType(
[
T.StructField("name", T.StringType(), True)
]
)
return ctx.spark_session.createDataFrame([["Alex"]], schema=schema)
您可以在transforms.api.TransformContext
该类的文档中找到完整的 API 描述,其中 和 等属性spark_session
可供parameters
您阅读。
注意:该spark_session
属性的类型为pyspark.sql.SparkSession