Latihan logging 2
Kode berikut dijalankan saat startup:
import logging
logging.basicConfig(stream=sys.stdout, level=logging.DEBUG,
format='%(levelname)s - %(message)s')
Dalam pelajaran, kita mempelajari bahwa operasi Spark yang memicu action harus dicatat (logging) dengan cermat untuk menghindari hilangnya sumber daya komputasi secara diam-diam. Sekarang Anda akan berlatih mengidentifikasi pernyataan logging yang memicu action pada sebuah dataframe atau tabel.
Sebuah dataframe text_df tersedia. Dataframe ini didaftarkan sebagai tabel bernama table1.
Latihan ini adalah bagian dari kursus
Pengantar Spark SQL dalam Python
Petunjuk latihan
- Beberapa pernyataan log disediakan. Semuanya awalnya diberi komentar. Hapus komentar pada lima pernyataan yang tidak memicu action pada
text_df.
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
# 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())