You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

32 lines
1.9 KiB
Markdown

# Лабораторная 2. Формирование отчётов в Apache Spark
## Задание
1. Преобразовать любой файл набора данных **Stack Overflow** в parquet формат c помощью Apache Spark.
2. Сформировать отчёт с информацией о частоте обсуждения 10 наиболее популярных языков программирования
в каждом году с 2010 года по сегодняшний день. Используйте теги входящие в список языков
перечисленных в википедии https://en.wikipedia.org/wiki/List_of_programming_languages.
Для выполнения задания вы можете использовать любую комбинацию Spark API: **RDD API**, **Dataset API**, **SQL API**.
## Набор данных
Архивы сайтов **Stack Exchange** доступны по адресу https://archive.org/details/stackexchange.
В папке `data` данного репозитория вам доступны:
- выборка данных `posts_sample.xml`,
- файл со списком языков `programming-languages.csv`, собранных с вики-страницы.
Рекомендуется отлаживать решение на небольшой выборке данных `posts_sample.xml`. Данная выборка была получена следующим кодом:
```
sc.textFile("/user/mapr/posts.xml").mapPartitions(_.take(100))
```
## Ссылки на источники
1. https://spark.apache.org/docs/latest/sql-programming-guide.html
2. http://timepasstechies.com/spark-dataset-api-examples-tutorial-20/
3. https://jaceklaskowski.gitbooks.io/mastering-spark-sql/
4. https://en.wikipedia.org/wiki/OLAP_cube
5. http://homepage.cs.latrobe.edu.au/zhe/ZhenHeSparkRDDAPIExamples.html