observe

Defina (con nombre) las métricas que se van a observar en dataframe. Este método devuelve un DataFrame "observado" que devuelve el mismo resultado que la entrada, con las siguientes garantías: calculará los agregados definidos (métricas) en todos los datos que fluyen a través del conjunto de datos en ese momento. Notificará el valor de las columnas de agregado definidas en cuanto lleguemos a un punto de finalización.

Sintaxis

observe(observation: Union["Observation", str], *exprs: Column)

Parámetros

Parámetro Tipo Descripción
observation Observación o str str para especificar el nombre o una Observation instancia para obtener la métrica.
exprs Columna expresiones de columna (Columna).

Devoluciones

DataFrame: dataframe observado.

Notas

Cuando observation es Observation, este método solo admite consultas por lotes. Cuando observation es una cadena, este método funciona tanto para consultas por lotes como para streaming. La ejecución continua aún no se admite.

Ejemplos

from pyspark.sql import Observation, functions as sf
df = spark.createDataFrame([(2, "Alice"), (5, "Bob")], schema=["age", "name"])
observation = Observation("my metrics")
observed_df = df.observe(observation,
    sf.count(sf.lit(1)).alias("count"), sf.max("age"))
observed_df.count()
# 2
observation.get
# {'count': 2, 'max(age)': 5}