Параллельные и распределённые вычисления 2019: различия между версиями
Перейти к навигации
Перейти к поиску
VeLKerr (обсуждение | вклад) |
|||
| (не показаны 24 промежуточные версии 2 участников) | |||
| Строка 1: | Строка 1: | ||
= Общие сведения = | = Общие сведения = | ||
* Семестр: 5 (третий курс) | |||
* Форма контроля: зачет | * Форма контроля: зачет | ||
* '''[http://bit.ly/336mbtp Форма регистрации на курс]''' | * '''[http://bit.ly/336mbtp Форма регистрации на курс]''' | ||
| Строка 6: | Строка 7: | ||
'''Материалы занятий''' | '''Материалы занятий''' | ||
* [https://www.youtube.com/ | * [https://www.youtube.com/watch?v=XR38gW_9CSI&list=PL4_hYwCyhAvaPnYMJ-mBwwkG1iORVpwz1 Видео лекций] | ||
* [https://drive.google.com/drive/folders/1tUlmDBzczmYZWDg3UVV4i8AXJ3fyZ_x6 Слайды презентаций] | * [https://drive.google.com/drive/folders/1tUlmDBzczmYZWDg3UVV4i8AXJ3fyZ_x6 Слайды презентаций] | ||
* [https://gitlab.com/VeLKerr/pardistrib Материалы семинаров | * [https://gitlab.com/VeLKerr/pardistrib Материалы семинаров] | ||
* [https://piazza.com/class/jz6s27kehkt1yl# Q&A форум "Piazza"] | * [https://piazza.com/class/jz6s27kehkt1yl# Q&A форум "Piazza"] | ||
* [https://gitlab.com/VeLKerr/pardistrib/tree/master/distribute/homeworks Домашние задания] | |||
= Преподаватели = | = Преподаватели = | ||
* Лекторы: | * '''Лекторы''' | ||
** Долуденко Алексей | ** Долуденко А. | ||
** | ** Ивченко О. | ||
* | ** Пилипенко А. | ||
** Бабин Олег | ** Лахвич Д. | ||
** Булгакова Дарья | ** Леонов Я. | ||
** Долуденко Алексей | |||
** Ахтямов Павел | * '''Семинаристы''' | ||
** Чернецкий Аркадий | ** Параллельная часть: | ||
** Иванова Юлия | *** Бабин Олег | ||
** Ивченко Олег | *** Долуденко Алексей | ||
*** Ахтямов Павел | |||
*** Иванова Юлия | |||
** Распределённая часть: | |||
*** Бабин Олег | |||
*** Булгакова Дарья | |||
*** Долуденко Алексей | |||
*** Ахтямов Павел | |||
*** Чернецкий Аркадий | |||
*** Иванова Юлия | |||
*** Ивченко Олег | |||
* '''Учебные ассистенты''' | |||
** Вручтель Серафима | |||
** Госткин Евгений. | |||
= Критерии получения оценки = | = Критерии получения оценки = | ||
После дедлайна задачи можно сдавать лишь с | Зачёт выставляется на основании баллов, полученных в течение семестра. | ||
=== Параллельная часть === | |||
2 домашних задания. Сдача предполагает публикацию кода на GitLab, а также устную защиту работы. | |||
=== Распределённая часть === | |||
4 домашних задания. Сдача проходит в 2 этапа: | |||
* прохождение автоматических тестов на базе системы BigJudge, | |||
* code review (проводится преподавателем либо учебным ассистентом). | |||
После мягкого дедлайна задачи можно сдавать лишь с 50% от максимальной оценки. | |||
После жёсткого - 25%. | |||
3 самостоятельных работы на семинарах: | |||
* 2-3 теор. вопроса, | |||
* 15-20 минут времени. | |||
==== Дедлайны по домашкам ==== | |||
{| class="wikitable" | |||
|- | |||
! Домашка | |||
! Мягкий deadline | |||
! Жёсткий deadline | |||
|- | |||
|[https://piazza.com/class/jz6s27kehkt1yl?cid=142 HDFS] || 27.10, 23:59 || 04.11, 23:59 | |||
|- | |||
|[https://piazza.com/class/jz6s27kehkt1yl?cid=206 MapReduce] || 17.11, 23:59 || 24.11, 23:59 | |||
|- | |||
|[https://piazza.com/class/jz6s27kehkt1yl?cid=356 Hive] || 24.11, 23:59 || 01.12, 23:59 | |||
|- | |||
|[https://piazza.com/class/jz6s27kehkt1yl?cid=379 Spark (bonus)] || 02.12, 23:59 || 09.12, 23:59 | |||
|- | |||
|[https://piazza.com/class/jz6s27kehkt1yl?cid=617 ZooKeeper] || 21.12, 23:59 || 21.12, 23:59 | |||
|} | |||
= План курса = | |||
{| class="wikitable" | |||
|- | |||
! Дата | |||
! Лектор | |||
! Тема лекций и семинаров | |||
! Дополнительные активности | |||
|- | |||
| 29.10 | |||
|| Пилипенко А. | |||
|| Hive, продолжение | |||
|| Контрольная по HDFS & MapReduce | |||
|- | |||
| 05.11 | |||
|| Лахвич Д. | |||
|| Spark, начало | |||
|| Выдача домашки по Hive | |||
|- | |||
| 12.11 | |||
|rowspan="5"| Леонов Я. | |||
|| Лекция: Модель распределённых систем | |||
|| Семинар: продолжение Spark | |||
|- | |||
| 19.11 | |||
|| AB, FLP, CAP. | |||
|| Контрольная по Hive & Spark. Выдача домашки по Zookeeper | |||
|- | |||
| 26.11 | |||
||Распределённые конфигурации. Zookeeper | |||
|| | |||
|- | |||
| 03.12 | |||
||Dynamo-подобные системы. Cassandra | |||
|| | |||
|- | |||
| 10.12 | |||
||Очереди в распределённых вычислениях. Kafka. | |||
|| Контрольная по Kafka, Zookeeper. | |||
|} | |||
= Список рекомендуемых материалов = | = Список рекомендуемых материалов = | ||
* Параллельная часть | * Параллельная часть | ||
# [https://d1b10bmlvqabco.cloudfront.net/attach/jz6s27kehkt1yl/jrswc6qfy9w3fv/k0e4khsqjq4a/GrishaginVAParallelnoeprogrammirovanienaosnoveMPI.pdf Методичка по MPI] | |||
# [https://d1b10bmlvqabco.cloudfront.net/attach/jz6s27kehkt1yl/jrswc6qfy9w3fv/k0ms1yc9wnat/openmp.pdf Методичка по OpenMP] | |||
* Распределённая часть (лекции) | |||
# [https://docs.google.com/presentation/d/1206T54F84HDhKbScxrDFzLnERRGwu0oLrbWEJ3mT9GI Распределённые файловые системы (GFS, HDFS). Её составляющие. Их достоинства, недостатки и сфера применения. Чтение и запись в HDFS. HDFS APIs: WebUI, shell, Java API] | |||
# [https://drive.google.com/file/d/1j5NEBSGjROwEXCujSNhFqKfrf9fL-ZGR/view?usp=sharing Парадигма MapReduce. Основная идея, формальное описание. Обзор реализаций. API для работы с Hadoop (Native Java API vs. Streaming), примеры] | |||
# [https://drive.google.com/file/d/1E_90b6GxA7wym3BB5RVsvBSS62bqjreh/view?usp=sharing Типы Join'ов и их реализации в парадигме MR. Паттерны проекттирования MR (pairs, stripes, составные ключи). PageRank в MR. Планировщик задач в YARN] | |||
# [https://drive.google.com/drive/folders/151645JTf7yK3CjuQMn5SM2AlPHtYCPcY?usp=sharing SQL поверх BigData] | |||
* Распределённая часть (семинары) | |||
# [https://gitlab.com/VeLKerr/pardistrib/blob/master/practice/01-hdfs.md Устройство Hadoop-кластера, HDFS CLI, Web API, внутреннее устройство HDFS] | |||
# [https://gitlab.com/VeLKerr/pardistrib/blob/master/practice/02-hadoop.md Hadoop streaming API. Простейшая программа на MapReduce (подсчёт слов в тексте). Её модификации. Инструменты отладки в MapReduce.] | |||
# [https://gitlab.com/VeLKerr/pardistrib/blob/master/practice/03-hadoop2.md Advanced HDFS shell. Hadoop Java API, Joins в MapReduce, Счётчики в MapReduce] | |||
# [https://gitlab.com/VeLKerr/pardistrib/blob/master/practice/04-Hive.md Apache Hive. Язык HiveQL, его расширения (Hive Streaming, User defined functions)] | |||
Текущая версия от 23:54, 16 февраля 2020
Общие сведения
- Семестр: 5 (третий курс)
- Форма контроля: зачет
- Форма регистрации на курс
- Таблица с оценками
- Телеграм-чат курса
Материалы занятий
Преподаватели
- Лекторы
- Долуденко А.
- Ивченко О.
- Пилипенко А.
- Лахвич Д.
- Леонов Я.
- Семинаристы
- Параллельная часть:
- Бабин Олег
- Долуденко Алексей
- Ахтямов Павел
- Иванова Юлия
- Распределённая часть:
- Бабин Олег
- Булгакова Дарья
- Долуденко Алексей
- Ахтямов Павел
- Чернецкий Аркадий
- Иванова Юлия
- Ивченко Олег
- Параллельная часть:
- Учебные ассистенты
- Вручтель Серафима
- Госткин Евгений.
Критерии получения оценки
Зачёт выставляется на основании баллов, полученных в течение семестра.
Параллельная часть
2 домашних задания. Сдача предполагает публикацию кода на GitLab, а также устную защиту работы.
Распределённая часть
4 домашних задания. Сдача проходит в 2 этапа:
- прохождение автоматических тестов на базе системы BigJudge,
- code review (проводится преподавателем либо учебным ассистентом).
После мягкого дедлайна задачи можно сдавать лишь с 50% от максимальной оценки. После жёсткого - 25%.
3 самостоятельных работы на семинарах:
- 2-3 теор. вопроса,
- 15-20 минут времени.
Дедлайны по домашкам
| Домашка | Мягкий deadline | Жёсткий deadline |
|---|---|---|
| HDFS | 27.10, 23:59 | 04.11, 23:59 |
| MapReduce | 17.11, 23:59 | 24.11, 23:59 |
| Hive | 24.11, 23:59 | 01.12, 23:59 |
| Spark (bonus) | 02.12, 23:59 | 09.12, 23:59 |
| ZooKeeper | 21.12, 23:59 | 21.12, 23:59 |
План курса
| Дата | Лектор | Тема лекций и семинаров | Дополнительные активности |
|---|---|---|---|
| 29.10 | Пилипенко А. | Hive, продолжение | Контрольная по HDFS & MapReduce |
| 05.11 | Лахвич Д. | Spark, начало | Выдача домашки по Hive |
| 12.11 | Леонов Я. | Лекция: Модель распределённых систем | Семинар: продолжение Spark |
| 19.11 | AB, FLP, CAP. | Контрольная по Hive & Spark. Выдача домашки по Zookeeper | |
| 26.11 | Распределённые конфигурации. Zookeeper | ||
| 03.12 | Dynamo-подобные системы. Cassandra | ||
| 10.12 | Очереди в распределённых вычислениях. Kafka. | Контрольная по Kafka, Zookeeper. |
Список рекомендуемых материалов
- Параллельная часть
- Распределённая часть (лекции)
- Распределённые файловые системы (GFS, HDFS). Её составляющие. Их достоинства, недостатки и сфера применения. Чтение и запись в HDFS. HDFS APIs: WebUI, shell, Java API
- Парадигма MapReduce. Основная идея, формальное описание. Обзор реализаций. API для работы с Hadoop (Native Java API vs. Streaming), примеры
- Типы Join'ов и их реализации в парадигме MR. Паттерны проекттирования MR (pairs, stripes, составные ключи). PageRank в MR. Планировщик задач в YARN
- SQL поверх BigData
- Распределённая часть (семинары)
- Устройство Hadoop-кластера, HDFS CLI, Web API, внутреннее устройство HDFS
- Hadoop streaming API. Простейшая программа на MapReduce (подсчёт слов в тексте). Её модификации. Инструменты отладки в MapReduce.
- Advanced HDFS shell. Hadoop Java API, Joins в MapReduce, Счётчики в MapReduce
- Apache Hive. Язык HiveQL, его расширения (Hive Streaming, User defined functions)