Comece agoraComece grátis

Pratique logging 2

O seguinte código é executado na inicialização:

import logging
logging.basicConfig(stream=sys.stdout, level=logging.DEBUG,
                    format='%(levelname)s - %(message)s')

Na lição, vimos que operações do Spark que disparam uma action devem ser registradas (logadas) com cuidado para evitar perda silenciosa de recursos de computação. Agora você vai praticar identificar instruções de logging que disparam uma action em um dataframe ou tabela.

Um dataframe text_df está disponível. Esse dataframe foi registrado como uma tabela chamada table1.

Este exercicio faz parte do curso

Introdução ao Spark SQL em Python

Ver curso

Instruções do exercicio

  • Várias instruções de log foram fornecidas. Todas estão comentadas inicialmente. Descomente as cinco instruções que não disparam uma action em text_df.

exercicio interativo prático

Tente este exercicio completando este código de exemplo.

# Uncomment the 5 statements that do NOT trigger text_df
# logging.debug("text_df columns: %s", text_df.columns)
# logging.info("table1 is cached: %s", spark.catalog.isCached(tableName="table1"))
# logging.warning("The first row of text_df: %s", text_df.first())
# logging.error("Selected columns: %s", text_df.select("id", "word"))
# logging.info("Tables: %s", spark.sql("show tables").collect())
# logging.debug("First row: %s", spark.sql("SELECT * FROM table1 limit 1"))
# logging.debug("Count: %s", spark.sql("SELECT COUNT(*) AS count FROM table1").collect())
Editar e Executar Código