ÎncepețiÎncepe gratuit

Exersează jurnalizarea 2

Următorul cod este executat la pornire:

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

În lecție am aflat că operațiile Spark care declanșează o acțiune trebuie jurnalizate cu atenție, pentru a evita consumul neobservat de resurse de calcul. Vei exersa acum identificarea instrucțiunilor de jurnalizare care declanșează o acțiune pe un dataframe sau o tabelă.

Este disponibil un dataframe text_df. Acest dataframe este înregistrat ca tabelă sub numele table1.

Acest exercițiu face parte din cursul

Introducere în Spark SQL în Python

Vezi cursul

Instrucțiuni pentru exercițiu

  • Sunt furnizate mai multe instrucțiuni de jurnalizare, toate inițial comentate. Decomentează cele cinci instrucțiuni care nu declanșează o acțiune pe text_df.

Exercițiu interactiv practic

Încearcă acest exercițiu completând acest cod de exemplu.

# 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())
Editează și rulează codul