Базы данных весна 2025
Содержание
Общий сведения
- Семестр: 4 (2 курс), 2 (1 курс), 6 (3 курс)
- Форма контроля: Дифференцированный зачёт
- [Ведомость]
Общие правила
Сдача любого контрольного мероприятия после дедлайна не предусмотрена. Сдача любого контрольного мероприятия имеет жесткий дедлайн. Продление дедлайнов возможно только по уважительной причине, +- три дня после даты мероприятия
Исключение составляют пропуски по болезни со справкой и олимпиады в сборной университета, о пропусках нужно обязательно предупредить заранее.
Продление дедлайнов по уважительным причинам происходит в инд. порядке (Для этого нужно в рамках указанных сроков написать письмо на почту семинариста, указать рук. курса в копию. В теле письма нужно написать мероприятие по которому хотите продлить дедлайн и указать причину + приложить подтверждающий документ). Дедлайн переносится на неделю от момента проведения мероприятия.
Все дедлайны: указанный день 23-59, если не оговорено другое.
Как подготовиться к курсу и настроить окружение, ПО
Смотрите тьюториалы согласно Вашей ПО раздел Установка ПО
Как попасть на курс
обязательно всем
1. Заполнить форму регистрации
2. Присоединиться к чату курса и каналу с новостями
3. Если возникли проблемы, то заполни форму
Из чего состоит курс
- Лекции и семинары расписание можно посмотреть на гитлабе
- КР - контрольные работы (практические задания + немного теории)
- ДЗ (практические задания)
- (Блокирующий) 1 отчетный - проект
- Дифф. Зачет в конце семестра
План курса
1. Рел. алгебра + Общая структура запроса ( и простые запросы) + Полезные функции SQL (например read csv и примеры)
2. Джойны, ключи + запросы с условиями + Сравнение с NULL
3. Проектирование, SCD (тут они начинают делать проект), НФ
4. Оконные функции
5. Подзапросы
6. CTE (в т.ч. рекурсивные)
7. Представления
8. Хранимые функции, процедуры, триггеры + интеграция с другими ЯП
9. Индексы
10. Кликхаус + диалекты скл + оптимизация запросов
Формула оценки
Максимальная оценка за курс может быть больше 10 - в ведомость ставится 10
Максимальная сумма баллов за контрольные мероприятия :
- КР - 2
- ДЗ - 1
- ПРОЕКТ - 5
- ЗАЧЕТ - 2
- БОНУС - 1
КР
Формат контрольных работ - Гугл/яндекс или аналогичная форма, которые содержат тестовую часть и часть с развернутым ответом. Формат будет уточнен семинаристом.
За семестр планируется 3 КР.
О проведении контрольной студентам будет сообщено хотя бы за 2 дня в канале или чате телеграм, а также может быть объявлено на занятиях в группе или передана информация через старост групп.
Оценки за КР выставляются до следующего семинара (примерно 1 неделя). Пропуск по неуважительной причине = 0б. Любые технические заминки на стороне студента, которые могут привести к “отправке” работы после дедлайна или “сбрасыванию” ответов = 0б и не дают права на повторное написание КР.
Даты проведения КР
КР № | Дата |
---|---|
1 | 24 - 28 марта |
2 | 21 - 25 апреля |
3 | 12 - 16 мая |
Контрольные проводятся на семинарах, ссылки на КР выдаются на занятии перед началом КР. Работы пишутся по вариантам. КОллективная работа над КР может привести к обнулению баллов.
ДЗ
Выполнять ДЗ можно с момента публикации
Как правильно сдавать задание
Для сдачи задач использовать выданные вам gitlab-репозитории.
1. Суть дз — написать SQL-скрипт по мотивам задачи.
2. Скрипты сохраняем в корне репозитория.
3. Имя файла с решением формируется из имени ветки: <ИМЯ ВЕТКИ>.sql (создайте его самостоятельно).
4. Каждая ветка — это отдельное решение. Имя ветки: hw<НОМЕР ДЗ>task<НОМЕР ЗАДАЧИ>. Для каждого ДЗ будет создан отдельный репозиторий.
5. На защите ДЗ Вас попросят продемонстрировать работу всех скриптов и решить 1 -2 задание или похожие задачи.
Дедлайны по ДЗ:
ДЗ 1 - 01.03.2025
ДЗ 2 - 14.03.2025
ДЗ 3 - 14.04.2025
ДЗ 4 - 30.04.2025
ДЗ 5 - 10.05.2025
Организационные моменты
ДЗ № | Балл от итоговой оценки | Темы |
---|---|---|
1 | 0.2 | Простые запросы |
2 | 0.2 | Агрегации, группировки, соединения, подзапросы |
3 | 0.2 | Оконные функции |
4 | 0.2 | CTE, Views |
5 | 0.2 | Functions, Stored Procedures, Triggers |
Разбаловал по каждой задаче в каждом ДЗ
Курсовой проект
Важно! Всю информацию, итерации сдачи/защиты курсового проекта можно найти в разделе Проект. Обратите внимание на примеры оформления.
Примеры хорошо оформленных интеграций по проекту
Обязательно:
После получения предварительной оценки за итерацию (и после защиты), необходимо загрузить материалы данной итерации на гитлаб. В комментариях надо указать :
1. Группу,
2. Итерацию,
3. Поставленную оценку,
4. Комментарии семинариста/ассистента (если есть) и кто это принял.
ДЕДЛАЙНЫ
Все пункты должны быть сданы и утверждены до дедлайна. При сдаче в последние дни перед дедлайном или в день дедлайна, если что-то требует доработки, то этот пункт не засчитывается
Рекомендация (не обязательно, но логично): выполнять и сдавать пункты №1 и №2 вместе, №3 и №4 вместе, №5 и №6 вместе
Обязательная часть (итерации 1-7) - 30.03
Дополнительная часть - 15.05
Команда курса
Директор курса: Смолкина Юлия Александровна
Почта: smolkina.iua@phystech.edu
Телеграм: @malayataglit
Команда курса:
Фамилия | Имя | Позиция | ТГ |
---|---|---|---|
Аллаберенов | Керим | Ассистент | @allaberenov_k |
Абдухоликзода | Ховар | Ассистент | @howardabd |
Чечеткин | Александр | Ассистент | @snakemanysss |
Ахмедов | Амонуллохон | Ассистент | @isfarinski |
Багрянов | Владислав | Ассистент | @vlad_bg |
Байстрюченко | Дмитрий | Ассистент | @LuciremD |
Басылбеков | Исабек | Ассистент | @isabek03 |
Бикещенко | Анастасия | Ассистент | @anastasia_bikes |
Богданов | Азат | Ассистент | @meganiger |
Булгаков | Георгий | Ассистент | @gbulgakov |
Герасимова | Александра | Ассистент | @Alexia_Kady |
Гулямов | Рахим | Ассистент | @rahimgulyamov |
Дементьев | Сергей | Ассистент | @sdementev33 |
Зайнуллин | Валерий | Ассистент | @valeriy_zainullin |
Ильин | Иван | Ассистент | @evfrpol |
Каныбеков | Канатбек | Ассистент | @getylman666 |
Кмито | Глеб | Ассистент | @sasamb4ik |
Кулешова | Анастасия | Ассистент | @stasiacool |
Мирзоев | Асрорхон | Ассистент | @alliseeisgoal |
Морочковский | Владислав | Ассистент | @what_is_10vee |
Мостовых | Егор | Ассистент | @Mostovykh |
Нам | Илья | Ассистент | @NIYrevich |
Новикова | Варвара | Ассистент | @pipipapyyy |
Обжерин | Евсей | Ассистент | @Ewseymath |
Парамонова | Анастасия | Ассистент | @witchernastia |
Петросян | Вера | Ассистент | @veerrkka |
Поляков | Геннадий | Ассистент | @nullziro |
Попов | Александр | Ассистент | @apopovprodby |
Руденко | Даниил | Ассистент | @RuDanechka4 |
Сазанович | Михаил | Ассистент | @Sazan1209 |
Собол | Жан | Ассистент | @Jan4ikS7 |
Хусрабов | Рустам | Ассистент | @khusrabov |
Ядров | Платон | Ассистент | @Platonrylit |
Андреева | Камилла | Ассистент | @msnkch |
Курбанбай | Куаныш | Ассистент | @haoydkqlsboql |
Масленникова | София | Ассистент | @So_haku |
Белков | Иван | Семинарист | @Belkovanya |
Бобоев | Муродали | Семинарист | @boboevm003 |
Будажапов | Марат | Семинарист | @budddma |
Викентьев | Михаил | Семинарист | @maelkaard |
Голуб | Алла | Семинарист | @Golub_Alla |
Ермошин | Михаил | Семинарист | @m_erMachine |
Кожанов | Глеб | Семинарист | @int_main_int |
Лушко | Есения | Семинарист | @Cocoroko |
Новиков | Иван | Семинарист | @novikov_ie |
Павлов | Михаил | Семинарист | @mikipaw |
Смолкина | Юлия | Семинарист | @malayataglit |
Ткачик | Андрей | Семинарист | @sfzxcboy |
Якушева | София | Семинарист | @stager108 |
Муромцев | Илья | Семинарист | @murrromcev |
Ссылки на материалы прошлых лет
2023
2024
- Форма регистрации
- Чат курса
- Все материалы по курсу 2024
- Форма: Проблемы на курсе БД
- Видеозаписи лекций 2024
Полезные дополнительные материалы
https://www.youtube.com/watch?v=DJJEr6IaW1Y&list=PL4_hYwCyhAva6-f-YxobKju-6ltmn-jNC
Темы:
Интерфейсы современных баз данных: реляционные, ключ-значение, документные, графовые. Реляционная алгебра и язык SQL.
Работа с диском в классических реляционных СУБД: страницы, пул страниц, вытеснение из пула.
Выполнение SQL запросов: разбор выражения, планирование, исполнение. Интерпретация и кодогенерация с помощью LLVM.
Индексы в реляционных СУБД: типы индексов, способы хранения, использование в запросах.
Транзакции: аббревеатура ACID, уровни изоляции, реализация транзакций через блокировки и MVCC.
Восстановление при аварии: журнал, чекпойнты, алгоритм ARIES.
Хранение данных методом Log-Structured Merge Tree.
Поколоночные СУБД: преимущества, особенности, алгоритмы сжатия данных.
Распределённые СУБД: шардирование, транзакции, выполнение запросов.
СУБД, распологающиеся в основной памяти. Структуры данных для индексов в памяти.
SQL.
CLI+Hadoop, доступ к кластеру, Scala base.
Захват данных с источника. Spark STG -> RAW.
ETL-платформы на базе Airflow. ETL + RAW -> ODS + Airflow.
Продвинутый Spark.
Классические хранилища, DV, AM. Проектирование.
MPP системы и GP в частности.
ODS->GP->DDS -> CDM.
Витрины, заказчик витрин, отчеты, взгляд со стороны BI. Визуализация в Tableau.
DQ, SLA, monitoring.
Управление, развитие, DWH.