ComeçarComece de graça

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 exercício faz parte do curso

Introdução ao Spark SQL em Python

Ver curso

Instruções do exercício

  • 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.

Exercício interativo prático

Experimente este exercício 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 o código