Базы данных 2
Материал из Wiki - Факультет компьютерных наук
Версия от 02:54, 10 января 2017; Ivsavin (обсуждение | вклад)
Базы данных
Продвинутый курс по БД для специальности РС.
Лекции
- TODO
Практические работы
В рамках курса нужно написать свою СУБД, в которой реализовать несколько ключевых механизмов, рассматриваемых в курсе, и обеспечивающих стабильную работу системы.
- Задание 1: Взаимодействие с памятью
- Задание 2: Индексы
- Задание 3: Валидация и план запроса
- Задание 4: Транзакции
- Задание 5: Параллельное выполнение запросов
Для практических заданий используется Java 8, можно пользоваться преимуществами этой версии (lambda, stream, работа со временем и тд, подробнее http://www.journaldev.com/2389/java-8-features-with-examples и https://www.tutorialspoint.com/java8/java8_overview.htm) Может быть полезным: http://web.mit.edu/6.005/www/sp16/
Для тестирования:
- http://site.mockito.org/
- http://stackoverflow.com/questions/22697/whats-the-best-mock-framework-for-java
Расчет оценки
Вклад в оценку:
- Практические задания (5 штук) - 60%, для зачета обязательно нужно выполнить все задания
- Несколько тестов в конце второй пары - 30%
- Итоговый тест (возможно, будет как домашняя работа) - 10%
- Дополнительные задания на разработку (если пропустили тесты) - 20%
У практических заданий есть дедлайны, каждый просроченный день после дедлайна дает -0.5 к оценке за задание, пока она не станет равна 4.
Литература
Основная литература:
- Системы баз данных. Полный курс. Г. Гарсиа-Молина, Д. Д. Ульман, Д. Уидом, 2004, Главы: 11-19 - частично устаревшее издание
- Database Systems. The Complete Book, H.García-Molina, J.Ullman, J.Widom 2nd Edition, 2009, Главы 13-20 - более новое издание, но только на английском
Дополнительная литература:
- "Architecture of a Database System" J.M.Hellerstein, M.Stonebraker, J.Hamilton, 2007
- https://en.wikibooks.org/wiki/Design_of_Main_Memory_Database_System
- http://codecapsule.com/tag/key-value-store/