Giao diện Spark UI

Nhập môn Spark SQL bằng Python

Mark Plutowski

Data Scientist

Dùng Spark UI để xem quá trình thực thi

  • Spark Task là đơn vị thực thi chạy trên một CPU

  • Spark Stage là nhóm các task thực hiện cùng phép tính song song, mỗi task thường chạy trên một phần dữ liệu khác nhau

  • Spark Job là phép tính được kích hoạt bởi một action, được chia thành một hoặc nhiều stage.

Nhập môn Spark SQL bằng Python

Tìm trang Spark UI

  1. http://[DRIVER_HOST]:4040
  2. http://[DRIVER_HOST]:4041
  3. http://[DRIVER_HOST]:4042
  4. http://[DRIVER_HOST]:4043
    ...
Nhập môn Spark SQL bằng Python

Nhập môn Spark SQL bằng Python

Nhập môn Spark SQL bằng Python

Nhập môn Spark SQL bằng Python

Thao tác với Spark catalog

  • spark.catalog.cacheTable('table1')
  • spark.catalog.uncacheTable('table1')
  • spark.catalog.isCached('table1')
  • spark.catalog.dropTempView('table1')
Nhập môn Spark SQL bằng Python

Spark Catalog

spark.catalog.listTables()
[Table(name='text', database=None, description=None, tableType='TEMPORARY', isTemporary=True)]
Nhập môn Spark SQL bằng Python

Nhập môn Spark SQL bằng Python

Nhập môn Spark SQL bằng Python

Thẻ Storage trong Spark UI

Hiển thị nơi các partition dữ liệu tồn tại

  • trong bộ nhớ,
  • hoặc trên đĩa,
  • trên toàn cụm,
  • tại một thời điểm chụp nhanh.
Nhập môn Spark SQL bằng Python

Thẻ SQL trong Spark UI

query3agg = """
SELECT w1, w2, w3, COUNT(*) as count FROM (
   SELECT 
   word AS w1,
   LEAD(word,1) OVER(PARTITION BY part ORDER BY id ) AS w2,
   LEAD(word,2) OVER(PARTITION BY part ORDER BY id ) AS w3
   FROM df
)
GROUP BY w1, w2, w3 
ORDER BY count DESC
""" 

spark.sql(query3agg).show()
Nhập môn Spark SQL bằng Python

Nhập môn Spark SQL bằng Python

Nhập môn Spark SQL bằng Python

Nhập môn Spark SQL bằng Python

Nhập môn Spark SQL bằng Python

Cùng luyện tập nào!

Nhập môn Spark SQL bằng Python

Preparing Video For Download...