Інтерфейс Spark UI

Вступ до Spark SQL у Python

Mark Plutowski

Data Scientist

Використовуйте Spark UI для аналізу виконання

  • Spark Task — це одиниця виконання, що працює на одному CPU

  • Spark Stage — група тасків, які паралельно виконують однакові обчислення; кожен таск зазвичай працює з іншим піднабором даних

  • Spark Job — обчислення, запущене дією, розбите на одну чи кілька стадій.

Вступ до Spark SQL у Python

Як знайти Spark UI

  1. http://[DRIVER_HOST]:4040
  2. http://[DRIVER_HOST]:4041
  3. http://[DRIVER_HOST]:4042
  4. http://[DRIVER_HOST]:4043
    ...
Вступ до Spark SQL у Python

Вступ до Spark SQL у Python

Вступ до Spark SQL у Python

Вступ до Spark SQL у Python

Операції каталогу Spark

  • spark.catalog.cacheTable('table1')
  • spark.catalog.uncacheTable('table1')
  • spark.catalog.isCached('table1')
  • spark.catalog.dropTempView('table1')
Вступ до Spark SQL у Python

Каталог Spark

spark.catalog.listTables()
[Table(name='text', database=None, description=None, tableType='TEMPORARY', isTemporary=True)]
Вступ до Spark SQL у Python

Вступ до Spark SQL у Python

Вступ до Spark SQL у Python

Вкладка Storage у Spark UI

Показує, де розміщені партиції даних

  • у пам'яті,
  • або на диску,
  • по всьому кластеру,
  • на певний момент часу.
Вступ до Spark SQL у Python

Вкладка SQL у 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()
Вступ до Spark SQL у Python

Вступ до Spark SQL у Python

Вступ до Spark SQL у Python

Вступ до Spark SQL у Python

Вступ до Spark SQL у Python

Давайте потренуємось!

Вступ до Spark SQL у Python

Preparing Video For Download...