Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Classe per osservare le metriche denominate in un dataframe.
Le metriche sono espressioni di aggregazione applicate al dataframe mentre vengono elaborate da un'azione. Un'istanza di Osservazione raccoglie le metriche mentre viene eseguita la prima azione. Le azioni successive non modificano le metriche restituite da Observation.get. Recupero della metrica tramite Observation.get blocchi fino a quando la prima azione non è terminata e le metriche diventano disponibili.
Sintassi
from pyspark.sql import Observation
observation = Observation(name=<name>)
Parametri
| Parametro | Tipo | Descrizione |
|---|---|---|
name |
str, facoltativo | Nome dell'osservazione e della metrica. Il valore predefinito è una stringa UUID casuale. |
Proprietà
| Proprietà | Descrizione |
|---|---|
get |
Restituisce le metriche osservate come dizionario. Attende che il set di dati osservato termini la prima azione. È disponibile solo il risultato della prima azione. |
Note
Questa classe non supporta i set di dati di streaming.
Le colonne delle metriche devono contenere un valore letterale ,ad esempio lit(42), oppure devono contenere una o più funzioni di aggregazione , ad esempio sum(a) o sum(a + b) + avg(c) - lit(1). Le espressioni che contengono riferimenti alle colonne del dataframe di input devono essere sempre racchiuse in una funzione di aggregazione.
Examples
from pyspark.sql.functions import col, count, lit, max
from pyspark.sql import Observation
df = spark.createDataFrame([["Alice", 2], ["Bob", 5]], ["name", "age"])
observation = Observation("my metrics")
observed_df = df.observe(observation, count(lit(1)).alias("count"), max(col("age")))
observed_df.count()
2
observation.get
{'count': 2, 'max(age)': 5}