Визуализация данных в PySpark с помощью DataFrames

Основы Big Data с PySpark

Upendra Devisetty

Science Analyst, CyVerse

Что такое визуализация данных?

  • Визуализация данных — представление данных в виде графиков или диаграмм

  • Инструменты визуализации с открытым исходным кодом для Python:

    • Matplotlib, Seaborn, Bokeh и др.
  • Построение графиков на основе PySpark DataFrames выполняется тремя способами

    • библиотека pyspark_dist_explore

    • toPandas()

    • библиотека HandySpark

Основы Big Data с PySpark

Визуализация данных с помощью Pyspark_dist_explore

  • Библиотека Pyspark_dist_explore позволяет быстро анализировать DataFrames

  • Доступны три функции: hist(), distplot() и pandas_histogram()

test_df = spark.read.csv("test.csv", header=True, inferSchema=True)
test_df_age = test_df.select('Age')
hist(test_df_age, bins=20, color="red")
Основы Big Data с PySpark

Построение графиков DataFrames с помощью pandas

  • Строить графики на основе pandas DataFrames просто
test_df = spark.read.csv("test.csv", header=True, inferSchema=True)
test_df_sample_pandas = test_df.toPandas()
test_df_sample_pandas.hist('Age')
  • Примечание: При работе с большими объёмами данных использовать toPandas() не рекомендуется
Основы Big Data с PySpark

Pandas DataFrame и PySpark DataFrame: сравнение

  • Pandas DataFrames хранятся в памяти одного сервера, тогда как операции PySpark выполняются параллельно

  • В pandas результат вычисляется сразу при выполнении операции, а в PySpark DataFrame применяется отложенное вычисление

  • Pandas DataFrame является изменяемым, а PySpark DataFrames — неизменяемыми

  • API pandas поддерживает больше операций, чем API PySpark DataFrame

Основы Big Data с PySpark

Визуализация с помощью HandySpark

  • HandySpark — пакет для улучшения работы с PySpark
    • Удобное получение данных
    • Сохранение распределённых вычислений
test_df = spark.read.csv('test.csv', header=True, inferSchema=True)
hdf = test_df.toHandy()
hdf.cols["Age"].hist()
Основы Big Data с PySpark

Давайте потренируемся!

Основы Big Data с PySpark

Preparing Video For Download...