Параллельные и распределённые вычисления 2019 — различия между версиями
(→Ссылки по распределенной части (сем)) |
VeLKerr (обсуждение | вклад) (→Критерии получения оценки) |
||
(не показаны 22 промежуточные версии 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://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/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/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://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/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/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/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)] | + | # [https://gitlab.com/VeLKerr/pardistrib/blob/master/practice/04-Hive.md Apache Hive. Язык HiveQL, его расширения (Hive Streaming, User defined functions)] |
Текущая версия на 02:54, 17 февраля 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)