Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Uma classe para observar métricas nomeadas em um DataFrame.
As métricas são expressões de agregação aplicadas ao DataFrame enquanto ele está sendo processado por uma ação. Uma instância de Observação coleta as métricas enquanto a primeira ação é executada. As ações subsequentes não modificam as métricas retornadas por Observation.get. Recuperação da métrica por meio Observation.get de blocos até que a primeira ação seja concluída e as métricas fiquem disponíveis.
Sintaxe
from pyspark.sql import Observation
observation = Observation(name=<name>)
Parâmetros
| Parâmetro | Tipo | Descrição |
|---|---|---|
name |
str, opcional | O nome da Observação e da métrica. O padrão é uma cadeia de caracteres UUID aleatória. |
Propriedades
| Propriedade | Descrição |
|---|---|
get |
Retorna as métricas observadas como um dicionário. Aguarda até que o conjunto de dados observado conclua sua primeira ação. Somente o resultado da primeira ação está disponível. |
Observações
Essa classe não dá suporte a conjuntos de dados de streaming.
As colunas de métricas devem conter um literal (por exemplo), lit(42)ou devem conter uma ou mais funções de agregação (por exemplo, sum(a) ou sum(a + b) + avg(c) - lit(1)). Expressões que contêm referências às colunas do DataFrame de entrada sempre devem ser encapsuladas em uma função de agregação.
Exemplos
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}