Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Classe à observer les métriques nommées sur un DataFrame.
Les métriques sont des expressions d’agrégation appliquées au DataFrame pendant qu’elles sont traitées par une action. Une instance d’observation collecte les métriques pendant l’exécution de la première action. Les actions suivantes ne modifient pas les métriques retournées par Observation.get. Récupération de la métrique via Observation.get des blocs jusqu’à ce que la première action soit terminée et que les métriques deviennent disponibles.
Syntaxe
from pyspark.sql import Observation
observation = Observation(name=<name>)
Paramètres
| Paramètre | Type | Description |
|---|---|---|
name |
str, facultatif | Nom de l’observation et de la métrique. La valeur par défaut est une chaîne UUID aléatoire. |
Propriétés
| Propriété | Description |
|---|---|
get |
Retourne les métriques observées en tant que dictionnaire. Attend que le jeu de données observé termine sa première action. Seul le résultat de la première action est disponible. |
Remarques
Cette classe ne prend pas en charge les jeux de données de diffusion en continu.
Les colonnes de métriques doivent contenir un littéral (par exemple, lit(42)) ou contenir une ou plusieurs fonctions d’agrégation (par exemple, sum(a) ou sum(a + b) + avg(c) - lit(1)). Les expressions qui contiennent des références aux colonnes du DataFrame d’entrée doivent toujours être encapsulées dans une fonction d’agrégation.
Exemples
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}