Фреймворки паралельних обчислень

Вступ до Data Engineering

Vincent Vankrunkelsven

Data Engineer, DataCamp

 

Логотип Apache hadoop

Вступ до Data Engineering

HDFS

 

Схема HDFS як розподіленої файлової системи

Вступ до Data Engineering

MapReduce

 

Логотип Hadoop MapReduce

 

Схема з прикладом олімпійських подій

Вступ до Data Engineering

Hive

 

  • Працює на Hadoop
  • Мова запитів: Hive SQL
  • Спершу MapReduce, тепер й інші інструменти

Логотип Apache Hive

Вступ до Data Engineering

Hive: приклад

 

SELECT year, AVG(age)
FROM views.athlete_events
GROUP BY year

 

Схема Hive до MapReduce

Вступ до Data Engineering

Зображення логотипу Spark

  • Уникає записів на диск
  • Підтримується Apache Software Foundation
Вступ до Data Engineering

Стійкі розподілені набори даних (RDD)

 

  • Базується на них
  • Подібні до списку кортежів
  • Трансформації: .map() або .filter()
  • Дії: .count() або .first()
Вступ до Data Engineering

PySpark

 

  • Інтерфейс Python до Spark
  • Абстракція DataFrame
  • Схожий на Pandas
Вступ до Data Engineering

PySpark: приклад

# Load the dataset into athlete_events_spark first

(athlete_events_spark
  .groupBy('Year')
  .mean('Age')
  .show())
SELECT year, AVG(age)
FROM views.athlete_events
GROUP BY year
Вступ до Data Engineering

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

Вступ до Data Engineering

Preparing Video For Download...