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

Материал из Public ATP Wiki
Перейти к: навигация, поиск
(КР)
(Из чего состоит курс)
 
(не показаны 24 промежуточные версии этого же участника)
Строка 2: Строка 2:
 
* Семестр: 4 (2 курс), 2 (1 курс), 6 (3 курс)
 
* Семестр: 4 (2 курс), 2 (1 курс), 6 (3 курс)
 
* Форма контроля: Дифференцированный зачёт
 
* Форма контроля: Дифференцированный зачёт
 +
* 15 недель, Семестр с 01.02 по 16.05
  
* [https://docs.google.com/document/d/1KJVumOF6nXr8UXpCV0qozQrR-SFw7o4I/edit?usp=sharing&ouid=114577160067925802179&rtpof=true&sd=true План курса, а также основная информация]
+
* [https://docs.google.com/document/d/1KJVumOF6nXr8UXpCV0qozQrR-SFw7o4I/edit?usp=sharing&ouid=114577160067925802179&rtpof=true&sd=true Вводная информация]
  
 
* [Ведомость]
 
* [Ведомость]
 +
 +
* [https://gitlab.com/fpmi-atp/db2022-supplementary/global Гитлаб]
  
 
== Общие правила ==
 
== Общие правила ==
  
Сдача любого контрольного мероприятия после дедлайна не предусмотрена.  
+
Сдача любого контрольного мероприятия после дедлайна не предусмотрена. Сдача любого контрольного мероприятия имеет жесткий дедлайн. Продление дедлайнов возможно только по уважительной причине, +- три дня после даты мероприятия
Опоздание = 0б.  
 
  
 
Исключение составляют пропуски по болезни со справкой и олимпиады в сборной университета, о пропусках нужно обязательно предупредить заранее.
 
Исключение составляют пропуски по болезни со справкой и олимпиады в сборной университета, о пропусках нужно обязательно предупредить заранее.
  
Продление дедлайнов по уважительным причинам происходит в инд. порядке (для этого нужно заранее предупредить своего семинариста, поставить рук. курса в копию + приложить документ, подтверждающий причину)
+
Продление дедлайнов по уважительным причинам происходит в инд. порядке (Для этого нужно в рамках указанных сроков написать письмо на почту семинариста, указать рук. курса в копию. В теле письма нужно написать мероприятие по которому хотите продлить дедлайн и указать причину + приложить подтверждающий документ). Дедлайн переносится на неделю от момента проведения мероприятия.
 +
 
  
Все дедлайны: указанный день 18-00, если не оговорено другое. То есть прислал работу в указанный день 18-06, Вы получите 0 б.
+
Все дедлайны: указанный день 23-59, если не оговорено другое.  
  
 
''' Как подготовиться к курсу и настроить окружение, ПО '''
 
''' Как подготовиться к курсу и настроить окружение, ПО '''
Строка 40: Строка 43:
  
  
 +
''' План курса'''
 +
 +
1. Занятие №1
 +
* Рел. алгебра
 +
* Архитектура СУБД (схема, таблица и тд)
 +
* Общая структура SELECT-запроса и Порядок выполнения запроса
 +
* Полезные функции, в том числе If-ELSE, CASE ветвления
 +
* Unioun и Union all
 +
* Обработка NULL, NaN и функционал greatest, least
 +
* Работа с разными типами данных (время и дата, текстовые форматы, логические данные)
 +
* Полезные функции SQL (например read csv и примеры)
  
== Формула оценки ==
+
2. Занятие №2
 +
* Джойны
 +
* Ключи
 +
* Запросы с условиями и группировками
 +
 
 +
3. Занятие №3
 +
* Проектирование
 +
* Версионирование SCD
 +
* НФ
 +
 
 +
4. Занятие №4
 +
* Сложные запросы (WITH, целостность, полезные функци)
 +
* Подзапросы (связанные, несвязанные, скалярные)
 +
 
 +
5. Занятие №5
 +
* Оконные функции
 +
 
 +
6. Занятие №6
 +
* Оконные функции (продолжение)
 +
* CTE
  
Максимальная оценка за курс может быть больше 10 - в ведомость ставится 10
+
7. Занятие №7
 +
* Рекурсия
 +
* Представления
  
Максимальная сумма баллов за контрольные мероприятия :
+
8. Занятие №8
 +
* Хранимые функции
 +
* Процедуры
 +
* Триггеры
  
КР - 2
+
9. Занятие №9
 +
* Индексы
 +
* Интеграция с другими ЯП
  
ДЗ - 1
+
10. Занятие №10
 +
* Кликхаус
 +
* Диалекты скл
 +
* Оптимизация запросов
  
ПРОЕКТ - 5
+
== Формула оценки ==
  
ЗАЧЕТ - 2
+
Максимальная оценка за курс может быть больше 10 - в ведомость ставится 10
  
БОНУС - 1
+
Максимальная сумма баллов за контрольные мероприятия :
 +
 
 +
* КР - 2
 +
* ДЗ - 1
 +
* ПРОЕКТ - 5
 +
* ЗАЧЕТ - 2
 +
* БОНУС - 1
  
  
Строка 69: Строка 118:
  
 
'''Даты проведения КР'''
 
'''Даты проведения КР'''
 +
{|  class="wikitable"
 +
|-
 +
! КР №
 +
! Дата
 +
|-
 +
|1 || 24 - 28 марта
 +
|-
 +
|2 || 21 - 25 апреля
 +
|-
 +
|3 || 12 - 16 мая
 +
|-
 +
|}
 +
 +
Контрольные проводятся на семинарах, ссылки на КР выдаются на занятии перед началом КР. Работы пишутся по вариантам. КОллективная работа над КР может привести к обнулению баллов.
 +
 +
  
 
== ДЗ ==
 
== ДЗ ==
Строка 74: Строка 139:
 
Выполнять ДЗ можно с момента публикации
 
Выполнять ДЗ можно с момента публикации
  
[https://docs.google.com/document/d/1OEci8859lss-NeYjKrRjqzwO0lhugtedg6UVO9RaASw/edit?usp=sharing Общая информация по ДЗ и разбаловка]
 
  
 
'''Как правильно сдавать задание'''
 
'''Как правильно сдавать задание'''
Строка 91: Строка 155:
  
  
Условия ДЗ и исходные данные можно [ здесь]
+
'''Условия ДЗ'''
 +
 
 +
HW 1 - https://drive.google.com/drive/folders/1OYg71tXxKQ0hYbIITY0f1Cj5aZtVqEbR?usp=sharing
 +
 
 +
HW 2 - https://drive.google.com/drive/folders/1n9hQF-rMfr6QD4imS7I_X-G-X8lSgnJd?usp=sharing
 +
 
 +
HW 3 - https://drive.google.com/drive/folders/1riyye6rRBH_t7uVjnhdgzgOAh7MK-UTA?usp=sharing
 +
 
 +
HW 4 - https://drive.google.com/drive/folders/1eGn7Yotnfz256uv9nTON0GMdDKyOzoGW?usp=sharing
 +
 
 +
HW 5 - https://drive.google.com/drive/folders/1Kk7mfKskQQHYiH2PXZHR9N9eDVdZTI8u?usp=sharing
 +
 
 +
Исходные данные (sql) - https://drive.google.com/drive/folders/1M5XvYuNUAhll_nPitrVatJKhPIFlzxx5?usp=drive_link
 +
 
 +
Исходные данные - https://drive.google.com/drive/folders/1bdwD7k7U_hk__pcahcYnHE0N9b8QKe6v?usp=sharing
  
 
'''Дедлайны по ДЗ:'''
 
'''Дедлайны по ДЗ:'''
Строка 105: Строка 183:
 
ДЗ 5 - 10.05.2025
 
ДЗ 5 - 10.05.2025
  
 +
'''Организационные моменты'''
 +
{|  class="wikitable"
 +
|-
 +
! ДЗ №
 +
! Балл от итоговой оценки
 +
! Темы
 +
|-
 +
|1 || 0.2 || Простые запросы
 +
|-
 +
|2 || 0.2 || Агрегации, группировки, соединения, подзапросы
 +
|-
 +
|3 || 0.2 || Оконные функции
 +
|-
 +
|4 || 0.2 || CTE, Views
 +
|-
 +
|5 || 0.2 || Functions, Stored Procedures, Triggers
 +
|}
  
 +
[https://docs.google.com/document/d/1OEci8859lss-NeYjKrRjqzwO0lhugtedg6UVO9RaASw/edit?usp=sharing Разбаловал по каждой задаче в каждом ДЗ]
  
 
== Курсовой проект ==
 
== Курсовой проект ==
  
Важно! Всю информацию и итерации сдачи/защиты курсового проекта можно найти [https://docs.google.com/document/d/1KJVumOF6nXr8UXpCV0qozQrR-SFw7o4I в разделе Проект].  
+
Важно! Всю информацию, итерации сдачи/защиты курсового проекта можно найти [https://docs.google.com/document/d/1KJVumOF6nXr8UXpCV0qozQrR-SFw7o4I в разделе Проект].  
 
Обратите внимание на примеры оформления.
 
Обратите внимание на примеры оформления.
  
'''Общая информация'''
+
[https://drive.google.com/drive/folders/1lCZIeHXCFy6YEmNcIe7hKTtXmCr50FNn?usp=sharing Примеры хорошо оформленных интеграций по проекту ]
Проект нужно сдавать по итерациям своему семинаристу(ке) или асситенту.  Работа над проектом '''исключительно индивидуальная'''.
 
 
 
На последнем семинаре (до зачета) защитить проект с презентацией. Все баллы за проект выставляются “финально” только после защиты.
 
Любые ошибки или неточности найденные в процессе защиты - могут снизить или обнулить заработанные баллы. При защите проекта могут задавать уточняли вопросы, на которые нужно ответить. Ответы на эти вопросы тоже входят в финальную оценка проекта.
 
 
 
'''Сдача проекта по итерациям''':
 
Итерация может включать в себя только отправку материалов на почту семинаристу/ассистенту. В таком случае на проверку закладывается '''до 5 раб.дней'''.
 
 
 
Итерация (большинство) сдаются лично ассистента или семинаристу. Сдача итерации может также включать в себя дополнительным вопросы и задачи для практики, не более 5 шт.
 
На каждую защиту итерации необходимо приносить в цифровом и печатном виде материалы всех предыдущих и текущей итераций. На печатных материалах должна быть проставлена подпись принимающего, предварительная оценка, дата, фио, комментарий (если потребуется)
 
  
Итерация считается сданной, только при ответа семинариста/ассистента, что больше никаких исправлений не требуется, и выставления предварительной оценки за итерацию.
 
Пересдать итерацию после получения предварительной оценки нельзя. Пересдачу итерации происходит только в случае нахождения критических замечаний, требующие исправления перед началом работы над следующей итерацией.
 
Каждая “сдача” после 1-ой несет за собой снижение максимального возможного для получения балла за итерацию '''на 30%''' от текущего максимального балла.
 
  
 
'''Обязательно:'''
 
'''Обязательно:'''
Строка 140: Строка 223:
  
 
4. Комментарии семинариста/ассистента (если есть) и кто это принял.
 
4. Комментарии семинариста/ассистента (если есть) и кто это принял.
 +
 +
'''ДЕДЛАЙНЫ'''
 +
 +
Все пункты должны быть сданы и утверждены до дедлайна. При сдаче в последние дни перед дедлайном или в день дедлайна, если что-то требует доработки, то этот пункт не засчитывается
 +
 +
Рекомендация (не обязательно, но логично): выполнять и сдавать пункты №1 и №2 вместе, №3 и №4 вместе, №5 и №6 вместе
 +
 +
'''Обязательная часть (итерации 1-7)''' - 30.03
 +
 +
'''Дополнительная часть''' - 15.05
  
 
== Команда курса ==
 
== Команда курса ==
Строка 276: Строка 369:
 
* [https://forms.yandex.ru/u/65743da3e010db4ef59de155/  Форма: Проблемы на курсе БД]
 
* [https://forms.yandex.ru/u/65743da3e010db4ef59de155/  Форма: Проблемы на курсе БД]
 
* [https://drive.google.com/drive/folders/1rQDVVHW2BTXLXpGGZhYnnnEDrSzmaloY?usp=sharing Видеозаписи лекций 2024]
 
* [https://drive.google.com/drive/folders/1rQDVVHW2BTXLXpGGZhYnnnEDrSzmaloY?usp=sharing Видеозаписи лекций 2024]
 +
---------------------
 +
 +
''' Полезные дополнительные материалы'''
 +
 +
https://www.youtube.com/watch?v=DJJEr6IaW1Y&list=PL4_hYwCyhAva6-f-YxobKju-6ltmn-jNC

Текущая версия на 12:38, 5 декабря 2024

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

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

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

Сдача любого контрольного мероприятия после дедлайна не предусмотрена. Сдача любого контрольного мероприятия имеет жесткий дедлайн. Продление дедлайнов возможно только по уважительной причине, +- три дня после даты мероприятия

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

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


Все дедлайны: указанный день 23-59, если не оговорено другое.

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

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

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

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

1. Заполнить форму регистрации

2. Присоединиться к чату курса и каналу с новостями

3. Если возникли проблемы, то заполни форму

Из чего состоит курс

  • Лекции и семинары расписание можно посмотреть на гитлабе
  • КР - контрольные работы (практические задания + немного теории)
  • ДЗ (практические задания)
  • (Блокирующий) 1 отчетный - проект
  • Дифф. Зачет в конце семестра


План курса

1. Занятие №1

  • Рел. алгебра
  • Архитектура СУБД (схема, таблица и тд)
  • Общая структура SELECT-запроса и Порядок выполнения запроса
  • Полезные функции, в том числе If-ELSE, CASE ветвления
  • Unioun и Union all
  • Обработка NULL, NaN и функционал greatest, least
  • Работа с разными типами данных (время и дата, текстовые форматы, логические данные)
  • Полезные функции SQL (например read csv и примеры)

2. Занятие №2

  • Джойны
  • Ключи
  • Запросы с условиями и группировками

3. Занятие №3

  • Проектирование
  • Версионирование SCD
  • НФ

4. Занятие №4

  • Сложные запросы (WITH, целостность, полезные функци)
  • Подзапросы (связанные, несвязанные, скалярные)

5. Занятие №5

  • Оконные функции

6. Занятие №6

  • Оконные функции (продолжение)
  • CTE

7. Занятие №7

  • Рекурсия
  • Представления

8. Занятие №8

  • Хранимые функции
  • Процедуры
  • Триггеры

9. Занятие №9

  • Индексы
  • Интеграция с другими ЯП

10. Занятие №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 задание или похожие задачи.


Условия ДЗ

HW 1 - https://drive.google.com/drive/folders/1OYg71tXxKQ0hYbIITY0f1Cj5aZtVqEbR?usp=sharing

HW 2 - https://drive.google.com/drive/folders/1n9hQF-rMfr6QD4imS7I_X-G-X8lSgnJd?usp=sharing

HW 3 - https://drive.google.com/drive/folders/1riyye6rRBH_t7uVjnhdgzgOAh7MK-UTA?usp=sharing

HW 4 - https://drive.google.com/drive/folders/1eGn7Yotnfz256uv9nTON0GMdDKyOzoGW?usp=sharing

HW 5 - https://drive.google.com/drive/folders/1Kk7mfKskQQHYiH2PXZHR9N9eDVdZTI8u?usp=sharing

Исходные данные (sql) - https://drive.google.com/drive/folders/1M5XvYuNUAhll_nPitrVatJKhPIFlzxx5?usp=drive_link

Исходные данные - https://drive.google.com/drive/folders/1bdwD7k7U_hk__pcahcYnHE0N9b8QKe6v?usp=sharing

Дедлайны по ДЗ:

ДЗ 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 

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

https://www.youtube.com/watch?v=DJJEr6IaW1Y&list=PL4_hYwCyhAva6-f-YxobKju-6ltmn-jNC