Базы данных весна 2025 — различия между версиями

Материал из Public ATP Wiki
Перейти к: навигация, поиск
(ДЗ)
Строка 155: Строка 155:
 
|}
 
|}
  
 
+
[https://docs.google.com/document/d/1OEci8859lss-NeYjKrRjqzwO0lhugtedg6UVO9RaASw/edit?usp=sharing Разбаловал по каждой задаче в каждом ДЗ]
  
 
== Курсовой проект ==
 
== Курсовой проект ==

Версия 15:10, 29 ноября 2024

Общий сведения

  • Семестр: 4 (2 курс), 2 (1 курс), 6 (3 курс)
  • Форма контроля: Дифференцированный зачёт
  • [Ведомость]

Общие правила

Сдача любого контрольного мероприятия после дедлайна не предусмотрена. Опоздание = 0б.

Исключение составляют пропуски по болезни со справкой и олимпиады в сборной университета, о пропусках нужно обязательно предупредить заранее.

Продление дедлайнов по уважительным причинам происходит в инд. порядке (для этого нужно заранее предупредить своего семинариста, поставить рук. курса в копию + приложить документ, подтверждающий причину)

Все дедлайны: указанный день 18-00, если не оговорено другое. То есть прислал работу в указанный день 18-06, Вы получите 0 б.

Как подготовиться к курсу и настроить окружение, ПО

Смотрите тьюториалы согласно Вашей ПО раздел Установка ПО

Как попасть на курс

обязательно всем

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

Разбаловал по каждой задаче в каждом ДЗ

Курсовой проект

Важно! Всю информацию и итерации сдачи/защиты курсового проекта можно найти в разделе Проект. Обратите внимание на примеры оформления.

Общая информация Проект нужно сдавать по итерациям своему семинаристу(ке) или асситенту. Работа над проектом исключительно индивидуальная.

На последнем семинаре (до зачета) защитить проект с презентацией. Все баллы за проект выставляются “финально” только после защиты. Любые ошибки или неточности найденные в процессе защиты - могут снизить или обнулить заработанные баллы. При защите проекта могут задавать уточняли вопросы, на которые нужно ответить. Ответы на эти вопросы тоже входят в финальную оценка проекта.

Сдача проекта по итерациям: Итерация может включать в себя только отправку материалов на почту семинаристу/ассистенту. В таком случае на проверку закладывается до 5 раб.дней.

Итерация (большинство) сдаются лично ассистента или семинаристу. Сдача итерации может также включать в себя дополнительным вопросы и задачи для практики, не более 5 шт. На каждую защиту итерации необходимо приносить в цифровом и печатном виде материалы всех предыдущих и текущей итераций. На печатных материалах должна быть проставлена подпись принимающего, предварительная оценка, дата, фио, комментарий (если потребуется)

Итерация считается сданной, только при ответа семинариста/ассистента, что больше никаких исправлений не требуется, и выставления предварительной оценки за итерацию. Пересдать итерацию после получения предварительной оценки нельзя. Пересдачу итерации происходит только в случае нахождения критических замечаний, требующие исправления перед началом работы над следующей итерацией. Каждая “сдача” после 1-ой несет за собой снижение максимального возможного для получения балла за итерацию на 30% от текущего максимального балла.

Обязательно:

После получения предварительной оценки за итерацию (и после защиты), необходимо загрузить материалы данной итерации на гитлаб. В комментариях надо указать :

1. Группу,

2. Итерацию,

3. Поставленную оценку,

4. Комментарии семинариста/ассистента (если есть) и кто это принял.

Команда курса

Директор курса: Смолкина Юлия Александровна

Почта: 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 

Полезные дополнительные материалы

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.