Бакалавриат
2024/2025
Базы данных (часть 2)
Статус:
Курс по выбору (Программная инженерия)
Направление:
09.03.04. Программная инженерия
Кто читает:
Департамент программной инженерии
Где читается:
Факультет компьютерных наук
Когда читается:
3-й курс, 1, 2 модуль
Формат изучения:
без онлайн-курса
Охват аудитории:
для своего кампуса
Преподаватели:
Брейман Александр Давидович
Язык:
русский
Кредиты:
5
Программа дисциплины
Аннотация
Курс представляет собой подробное введение в распределенную обработку данных, хранилища данных, многомерные OLAP-инструменты и системы массовой параллельной обработки данных (Hadoop, Cassandra, MongoDB, Spark, Ignite). Слушатели получат представление об устройстве, инструментах и методологии проектирования распределенных баз данных и хранилищ данных.
Цель освоения дисциплины
- Целью курса является формирование профессиональных компетенций, связанных с проектированием и внедрением нескольких видов распределенных баз данных, включая хранилища данных, онлайн-аналитическую обработку данных и инструменты управления большими данными. Слушатели получат представление о сильных и слабых сторонах широкого спектра подходов к хранению, поиску и извлечение информации, что позволит им делать осознанный выбор модели базы данных в своих проектах.
Планируемые результаты обучения
- Знание метрик качества данных.
- Знание основных шаблонов проектирования процессов интеграции данных и умение их применять на практике.
- Умеет идентифицировать существующие подходы к обеспечению качества данных
- Понимать и уметь объяснить архитектуру систем баз данных, принципы концептуального, логического и физического проектирования баз данных.
- Уметь сравнивать базы и хранилища данных
- Знает основные понятия многомерной модели хранилищ данных: меры, измерения, иерархии, операции OLAP
- Умеет выполнять концептуальное проектирование многомерной модели хранилища данных
- Умеет отобразить концептуальную модель хранилища данных на логические ROLAP модели звезды и снежинки
- Знание архитектур интеграции данных.
- Знание методов очистки данных.
- Создавать документно-ориентированные базы данных, сохранять и извлекать документы из них.
- Создавать и использовать базы данных ключ-значение.
- Использовать HDFS для хранения, поиска и извлечения файлов.
- Оценивать применимость Hadoop для решения конкретных задач.
- Объяснять процесс выполнения программ MapReduce в YARN.
- Проектировать модели данных для Cassandra.
- Составлять запросы и команды на CQL.
- Обсуждать устройство Cassandra.
- Оценивать применимость баз данных в оперативной памяти к решению конкретных задач.
- Описывать устройство и структуру хранения данных в базах данных в оперативной памяти.
- Описывать реализацию основных операций в базах данных в оперативной памяти.
- Использовать Kafka для связи систем и сервисов.
- Составлять запросы для потоковой обработки данных в ksqlDB.
- Составлять программы для обработки потоков данных на Flink.
- Составлять программы для распределенной обработки данных на Spark.
Содержание учебной дисциплины
- Основы управления данными
- Архитектуры и модели хранилищ данных
- Качество данных и интеграция данных
- Базы данных ключ-значение и документно-ориентированные базы данных
- Hadoop и Spark
- Распределенные базы данных NoSQL
- Базы данных в оперативной памяти
- Обработка потоков данных
Промежуточная аттестация
- 2024/2025 2nd module0.21 * Групповой проект + 0.14 * Контрольная работа + 0.21 * Работа на семинарах + 0.3 * Экзамен + 0.14 * Эссе
Список литературы
Рекомендуемая основная литература
- Apache Kafka. Потоковая обработка и анализ данных. 2-е изд. - 978-5-4461-2288-2 - Гвен Шапира, Тодд Палино, Раджини Сиварам, Крит Петти - 2023 - Санкт-Петербург: Питер - https://ibooks.ru/bookshelf/390221 - 390221 - iBOOKS
- Berg, Silvia, P., & Frye, R. (2016). SAP HANA : An Introduction (Vol. Fourth edition). Bonn: SAP PRESS. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=1350145
- Kafka Streams и ksqlDB: данные в реальном времени. - 978-5-4461-3945-3 - Сеймур Митч - 2023 - Санкт-Петербург: Питер - https://ibooks.ru/bookshelf/390223 - 390223 - iBOOKS
- SQL Server. Наладка и оптимизация для профессионалов. - 978-5-4461-2332-2 - Короткевич Дмитрий - 2023 - Санкт-Петербург: Питер - https://ibooks.ru/bookshelf/390204 - 390204 - iBOOKS
- Григорьев, Ю. А. Реляционные базы данных и системы NoSQL : учебное пособие / Ю. А. Григорьев, А. Д. Плутенко, О. Ю. Плужникова. — Благовещенск : АмГУ, 2018. — 424 с. — ISBN 978-5-93493-308-2. — Текст : электронный // Лань : электронно-библиотечная система. — URL: https://e.lanbook.com/book/156492 (дата обращения: 00.00.0000). — Режим доступа: для авториз. пользователей.
- Карпентер, Д. Cassandra. Полное руководство : руководство / Д. Карпентер, Э. Хьюитт , перевод с английского А. А. Слинкина. — 2-е изд. — Москва : ДМК Пресс, 2017. — 400 с. — ISBN 978-5-97060-453-3. — Текст : электронный // Лань : электронно-библиотечная система. — URL: https://e.lanbook.com/book/93577 (дата обращения: 00.00.0000). — Режим доступа: для авториз. пользователей.
- Орешков, В. И. Хранилища данных и OLAP-технологии : учебное пособие / В. И. Орешков. — Рязань : РГРТУ, 2017. — 64 с. — Текст : электронный // Лань : электронно-библиотечная система. — URL: https://e.lanbook.com/book/167981 (дата обращения: 00.00.0000). — Режим доступа: для авториз. пользователей.
- Парфенов, Ю. П. Постреляционные хранилища данных : учебное пособие для вузов / Ю. П. Парфенов ; под научной редакцией Н. В. Папуловской. — Москва : Издательство Юрайт, 2023. — 121 с. — (Высшее образование). — ISBN 978-5-534-09837-2. — Текст : электронный // Образовательная платформа Юрайт [сайт]. — URL: https://urait.ru/bcode/514724 (дата обращения: 27.08.2024).
- Расширенная аналитика с PySpark: Пер. с англ. - 978-5-9775-1770-6 - Tandon Akash - 2023 - Санкт-Петербург: БХВ-Петербург - https://ibooks.ru/bookshelf/389656 - 389656 - iBOOKS
- Скотт, Д. Kafka в действии : руководство / Д. Скотт, В. Гамов, Д. Клейн , перевод с английского А. Н. Киселева. — Москва : ДМК Пресс, 2022. — 310 с. — ISBN 978-5-93700-118-4. — Текст : электронный // Лань : электронно-библиотечная система. — URL: https://e.lanbook.com/book/314888 (дата обращения: 00.00.0000). — Режим доступа: для авториз. пользователей.
- Советов, Б. Я. Базы данных : учебник для среднего профессионального образования / Б. Я. Советов, В. В. Цехановский, В. Д. Чертовской. — 3-е изд., перераб. и доп. — Москва : Издательство Юрайт, 2023. — 420 с. — (Профессиональное образование). — ISBN 978-5-534-09324-7. — Текст : электронный // Образовательная платформа Юрайт [сайт]. — URL: https://urait.ru/bcode/514585 (дата обращения: 27.08.2024).
- Уэске, Ф. Потоковая обработка данных с Apache Flink / Ф. Уэске, В. Калари , перевод с английского В. С. Яценкова. — Москва : ДМК Пресс, 2021. — 298 с. — ISBN 978-5-97060-880-7. — Текст : электронный // Лань : электронно-библиотечная система. — URL: https://e.lanbook.com/book/241004 (дата обращения: 00.00.0000). — Режим доступа: для авториз. пользователей.
Рекомендуемая дополнительная литература
- Antony, B., Boudnik, K., Adams, C., Shao, B., Lee, C., & Sasaki, K. (2016). Professional Hadoop. Indianapolis, IN: Wrox. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=1233763
- Carpenter, J., & Hewitt, E. (2016). Cassandra: The Definitive Guide : Distributed Data at Web Scale (Vol. Second edition). Sebastopol, CA: Reilly - O’Reilly Media. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=1271661
- Deka, G. C. (2017). NoSQL : Database for Storage and Retrieval of Data in Cloud. Boca Raton, FL: Chapman and Hall/CRC. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=1521297
- Deshpande, T. (2014). Mastering DynamoDB. Birmingham, UK: Packt Publishing. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=836700
- Doan, A., Halevy, A., & Ives, Z. G. (2012). Principles of Data Integration. [Waltham, MA]: Morgan Kaufmann. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=465063
- Edward, S. G., & Sabharwal, N. (2015). Practical MongoDB : Architecting, Developing, and Administering MongoDB. [Berkeley, CA]: Apress. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=1124206
- Fowler, A. (2015). NoSQL For Dummies. Hoboken, NJ: For Dummies. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=942547
- Ganti, V., & Das Sarma, A. (2013). Data Cleaning : A Practical Perspective. [San Rafael, California]: Morgan & Claypool Publishers. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=646833
- Jukic, N., Vrbsky, S., & Nestorov, S. (2017). Database Systems : Introduction to Databases and Data Warehouses. Burlington, Virginia: Prospect Press. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=1562389
- Kafka Streams в действии. Приложения и микросервисы для работы в реальном времени - 978-5-4461-1201-2 - Билл Беджек - 2021 - Санкт-Петербург: Питер - https://ibooks.ru/bookshelf/365265 - 365265 - iBOOKS
- Kimball, R., & Caserta, J. (2004). The Data Warehouse ETL Toolkit : Practical Techniques for Extracting, Cleaning, Conforming, and Delivering Data. Indianapolis, IN: Wiley. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=124355
- KOROTKEVITCH, D. (2017). Expert SQL Server In-Memory OLTP (Vol. 2nd ed). Berkeley, CA: Apress. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=1589522
- Krish Krishnan. (2019). Building Big Data Applications. [N.p.]: Academic Press. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=1892146
- Linstedt, D., & Olschimke, M. (2015). Building a Scalable Data Warehouse with Data Vault 2.0. Amsterdam: Morgan Kaufmann. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=1065504
- Nabi, Z. (2016). Pro Spark Streaming : The Zen of Real-Time Analytics Using Apache Spark. [Berkeley, CA]: Apress. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=1174432
- Nelson, J. (2016). Mastering Redis. Birmingham, UK: Packt Publishing. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=1243702
- Parsian, M. (2015). Data Algorithms : Recipes for Scaling Up with Hadoop and Spark. [Sebastopol, CA]: O’Reilly Media. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=1028927
- Perkins, L., Redmond, E., & Wilson, J. R. (2018). Seven Databases in Seven Weeks : A Guide to Modern Databases and the NoSQL Movement (Vol. Second edition). Raleigh, N. C: Pragmatic Bookshelf. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=1806794
- Romeo Kienzler, Md. Rezaul Karim, Sridhar Alla, Siamak Amirghodsi, Meenakshi Rajendran, Broderick Hall, & Shuen Mei. (2018). Apache Spark 2: Data Processing and Real-Time Analytics : Master Complex Big Data Processing, Stream Analytics, and Machine Learning with Apache Spark. Birmingham: Packt Publishing. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=1991793
- Shrivastava, A., & Deshpande, T. (2016). Hadoop Blueprints. Birmingham, UK: Packt Publishing. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=1364692
- Tae, K. H., Roh, Y., Oh, Y. H., Kim, H., & Whang, S. E. (2019). Data Cleaning for Accurate, Fair, and Robust Models: A Big Data - AI Integration Approach. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsarx&AN=edsarx.1904.10761
- Базы данных: Работа с распределенными базами данных и файловыми системами на примере MongoDB и HDFS с использованием Node.js, Express.js, Apache Spark и Scala - Мартишин С.А., Симонов В.Л., Храпченко М.В. - НИЦ ИНФРА-М - 2023 - https://znanium.com/catalog/product/1876807 - 484082 - ZNANIUM
- Барсегян А., Куприянов М., Степаненко В., Холод И. Технологии анализа данных: Data Mining, Text Mining, Visual Mining, OLAP. 2 изд., Санкт-Петербург: БХВ-Петербург, 2008 г. , 384 с. ISBN 5-94157-991-8
- Перрен, Ж. -. Spark в действии / Ж. -. Перрен , перевод с английского А. В. Снастина. — Москва : ДМК Пресс, 2021. — 636 с. — ISBN 978-5-97060-879-1. — Текст : электронный // Лань : электронно-библиотечная система. — URL: https://e.lanbook.com/book/241001 (дата обращения: 00.00.0000). — Режим доступа: для авториз. пользователей.
- Туманов, В. Е. Проектирование хранилищ данных для приложений систем деловой осведомленности (Business Intelligence Systems) : учебное пособие / В. Е. Туманов. — 2-е изд. — Москва : ИНТУИТ, 2016. — 957 с. — ISBN 978-5-9963-0353-3. — Текст : электронный // Лань : электронно-библиотечная система. — URL: https://e.lanbook.com/book/100389 (дата обращения: 00.00.0000). — Режим доступа: для авториз. пользователей.
- Эрик, Р. Семь баз данных за семь недель. Введение в современные базы данных и идеологию NoSQL / Р. Эрик, Р. У. Джим. , под редакцией Ж. Картер , перевод с английского А. А. Слинкин. — Москва : ДМК Пресс, 2013. — 384 с. — ISBN 978-5-94074-866-3. — Текст : электронный // Лань : электронно-библиотечная система. — URL: https://e.lanbook.com/book/58690 (дата обращения: 00.00.0000). — Режим доступа: для авториз. пользователей.