Лабораторна робота 1. Початкове дослідження даних (6 балів)

Вимоги до звіту

Звіт про виконання роботи потрібно оформити в форматі python jupyter notebook (https://colab.research.google.com) . Посилання на звіт надається як відповідь на завдання

Практичне завдання

  1. Встановити Apache Spark в Google Colaboratory
  2. Прочитати дані ( https://www.kaggle.com/usaf/vietnam-war-bombing-operations  або https://drive.google.com/a/epfl.ch/file/d/1L6pCQkldvdBoaEhRFzL0VnrggEFvqON4/view?usp=sharing )
  3. Показати структуру даних
  4. Показати перші рядки
  5. Підрахувати кількість рядків
  6. Підрахувати окремо кількість місій для кожної країни за допомогою map/reduce
  7. Скопіювати в pandas DataFrame дані про кількість місій для кожної країни
  8. Показати гістограму "кількість місій для кожної країни"
  9. Підрахувати кількість місій для кожної країни та дати за допомогою map/reduce
  10. Показати на графіку кількість місій для кожної країни в залежності від дати
  11. Показати перелік цілей
  12. Показати перелік країн для заданої цілі
  13. Показати на графіку кількість місій для кожної країни в залежностів від дати для заданої цілі
  14. Показати кількість місій для кожного типу літака за допомогою  map/reduce
  15. Показати кількість місій для кожного типу літака в залежності від дати за допомогою map/reduce

Теоретичні запитання

1. Що таке RDD в Apache Spark?
2. Який тип об'єкта в Apache Spark містить реалізацію map-reduce?
3. Які операції можна виконувати на кроці map в рамках підходу map-reduce?
4. Які операції можна виконувати на кроці reduce в рамках підходу map-reduce?
 

Додаткові відомості

  1. Приклади 
  2. Довідка з Apache Spark 
  3. Документація Apache Spark