• A
  • A
  • A
  • АБB
  • АБB
  • АБB
  • А
  • А
  • А
  • А
  • А
Обычная версия сайта
2025/2026

Системы хранения данных

Статус: Маго-лего
Когда читается: 1, 2 модуль
Охват аудитории: для своего кампуса
Язык: русский
Кредиты: 6
Контактные часы: 40

Программа дисциплины

Аннотация

Курс предоставляет студентам углубленные знания о различных архитектурах и типах систем хранения данных, а также о базах данных и хранилищах данных для обработки больших объемов информации. Особое внимание уделяется современным тенденциям в области хранения данных, включая облачные решения и инфраструктуру как код. Студенты получат возможность изучить методы оптимизации производительности систем хранения данных, включая настройку индексов, запросов и конфигураций баз данных. Они также узнают о принципах обеспечения отказоустойчивости, высокой доступности и масштабируемости систем хранения. Курс также включает в себя практические задания, в ходе которых студенты будут разрабатывать и настраивать системы хранения данных, а также проводить анализ и оптимизацию существующих хранилищ данных.
Цель освоения дисциплины

Цель освоения дисциплины

  • Формирование знаний, умений и навыков проектирования и администрирования хранилищ данных (ХД)
  • Формирование знаний, умений и навыков разработки приложений (внешних интерфейсов) ХД
  • Формирование знаний, умений и навыков использования средств многомерного анализа данных класса OLAP.
Планируемые результаты обучения

Планируемые результаты обучения

  • - различать основные типы систем хранения данных: реляционные базы данных (RDBMS), хранилища данных (DWH), Data Lake, Lakehouse
  • - выбирать подходящее хранилище данных в зависимости от задач бизнеса или аналитики
  • - визуализировать архитектуру хранения данных для бизнес-кейсов
  • -описывать ключевые подходы к проектированию DWH: Inmon (центрированное на всей компании хранилище) и Kimball (доменные витрины данных, «снизу вверх»)
  • -оценивать влияние выбранной архитектуры на производительность операций, масштабируемость и поддерживаемость
  • -готовить проектные решения
  • -работать с конкретными сценариями использования различных подходов (Inmon, Kimball) в условиях ограниченных ресурсов или быстрорастущих данных
  • -определять факты и измерения применительно к различным бизнес-сценариям, формулировать требования к аналитике
  • -проектировать базовые размерные модели для кейсов бизнеса
  • -создавать схемы “звезда” и “снежинка” для типовых задач, выделять и связывать таблицы фактов и измерений
  • -анализировать бизнес-кейсы и выбирать оптимальный уровень детализации (grain) для хранения данных
  • -оценивать производительность аналитических запросов и находить способы ее улучшения через корректировку модели
  • -различать и визуализировать компоненты Data Vault (хабы, линк-таблицы, сателлиты) в архитектуре хранилища для заданных бизнес-сценариев
  • -определять, какие данные должны быть хабами, какие — линками, а какие — сателлитами при моделировании нового источника информации
  • -проектировать схему Data Vault для простых кейсов (например, добавление новой системы учёта клиентов или транзакций
  • -оценивать, когда и почему Data Vault предпочтительнее классического подхода
  • создавать и запускать проекты DBT
  • писать кастомные SQL-модели для трансформации данных
  • -реализовывать тестирование моделей данных
  • документировать и визуализировать инфраструктуру данных
  • -выполнять базовый анализ качества данных на предоставленных наборах данных
  • -использовать методы выявления ошибок и аномалий в данных, включая автоматические и ручные проверки
  • -применять техники исправления ошибок: очистка данных, удаление дубликатов, заполнение пропусков и корректировка форматов
  • -документировать обнаруженные проблемы и методы их решения для последующего контроля качества данных
  • -конфигурировать и визуализировать архитектуру Greenplum, идентифицировать роли компонентов (мастер-узел, сегменты)
  • -загружать данные в Greenplum, используя стандартные инструменты и лучшие практики для распределенных систем
  • -выполнять аналитические запросы с учётом распределённой структуры данных, оптимизировать простые SELECT-запросы
  • -анализировать планы выполнения запросов и применять базовые методы оптимизации
  • -решать задачи масштабирования путем добавления сегментов и повышения параллелизма в вычислениях
  • -конфигурировать и использовать Clickhouse для загрузки данных
  • -выполнять эффективные SQL-запросы для аналитики, выбирая только нужные столбцы для минимизации нагрузки
  • -анализировать планы выполнения запросов и применять основные методы оптимизации
  • -проводить оптимизацию простых процессов загрузки и запросов
  • -использовать возможности параллельной обработки и сжатия данных
  • -использовать данные и инфраструктуру DWH для подготовки наборов данных, необходимых для обучения ML-моделей
  • -писать простые SQL-запросы и скрипты для извлечения признаков (feature engineering) из данных DWH
  • -анализировать примеры внедрения ML-процессов с DWH, указывать на возможные риски и ограничения
  • -различать и выбирать подходящие облачные DWH-сервисы в зависимости от требований бизнеса и технических условий
  • -планировать архитектуру облачного DWH с учетом специфики масштабирования, обработки данных и интеграции с внешними источниками
  • -выполнять базовые операции по загрузке, трансформации и запросам данных в облачных DWH
  • -конфигурировать управление доступом и безопасности данных в облачной среде
  • -использовать инструменты мониторинга и оптимизации расходов и производительности облачного DWH
  • -определять виды данных для хранения и выбирать подходы к организации и классификации данных в Data Lake
  • -планировать структуру Data Lake под конкретные задачи и типы данных, учитывая требования к хранению и доступу
  • -анализировать проблемные места в управлении Data Lake, предлагать решения по обеспечению качества, безопасности и оптимальному хранению
  • -визуализировать архитектуру Data Lake с учетом уровней и зон хранения данных
  • -выбирать формат хранения данных в зависимости от сценария
  • -выполнять операции с файлами в выбранных форматах, включая загрузку, трансформацию и оптимизацию хранения
  • -настраивать схемы, управлять эволюцией данных, понимать влияние структуры данных на производительность запросов
  • -визуализировать архитектуру Data Lake с учетом используемых форматов и зон хранения данных
  • -запускать базовые задачи пакетной обработки на Apache Spark, используя SparkSession и SQL для трансформации данных
  • -создавать и выполнять простые потоковые задачи на Apache Flink с использованием DataStream API и SQL
  • -использовать API Spark и Flink для чтения, фильтрации и записи данных в различные слои Data Lake (например, Raw, Cleansed)
  • -анализировать и выбирать подходящий тип обработки (пакетная или потоковая) и архитектурный паттерн для конкретных бизнес- и технических задач
  • -писать SQL-запросы для анализа данных в Hadoop с использованием Hive, Presto и Trino
  • -оптимизировать запросы с учётом особенностей работы инструментов
  • -использовать функции и расширения, специфичные для Hive, Presto и Trino, для решения практических задач
  • -анализировать планы выполнения запросов, выявлять узкие места и применять методы оптимизации
  • -создавать и запускать простые ML-пайплайны с использованием Spark MLlib
  • -использовать API Spark для обработки больших наборов данных из Data Lake, эффективно управляя вычислительными ресурсами
  • -организовывать ведение экспериментов, логирование параметров и результатов моделей с помощью MLflow
  • -управлять версиями моделей, регистрировать и извлекать модели из MLflow Model Registry для последующего использования и мониторинга
  • -демонстрировать интеграцию ML-процессов с Data Lake, обеспечивая гибкость, масштабируемость и воспроизводимость
  • -настраивать и работать с Apache Kafka для публикации и потребления сообщений
  • -использовать CDC для потоковой фиксации и передачи изменений из баз данных
  • -создавать приложения на Spark Streaming для микропакетной обработки данных и преобразования потоков
  • -запускать задачи потоковой обработки в Apache Flink
  • -использовать DataStream API для трансформации и агрегации данных
  • -конфигурировать Kerberos для организации безопасной аутентификации в распределённой среде
  • -работать с Apache Atlas для каталогизации данных, назначения метаданных безопасности и мониторинга соответствия политикам
  • -выполнять базовые операции аудита доступа и действий пользователей для обеспечения безопасности и регуляторных требований
Содержание учебной дисциплины

Содержание учебной дисциплины

  • Введение в современные хранилища данных
  • Основы DWH
  • Размерное моделирование
  • Data Vault
  • Data Build Tool
  • Качество данных
  • Greenplum
  • Clickhouse
  • ML в DWH
  • DWH в облаках
  • Организация Data Lake
  • Форматы хранения в Data Lake
  • Обработка данных в Data Lakе
  • SQL в Hadoop
  • ML в Data Lake
  • Streaming
  • Безопасность и управление доступом
Элементы контроля

Элементы контроля

  • неблокирующий Задание с проверкой от преподавателя по модулю 1
  • неблокирующий Задание с проверкой от преподавателя по модулю 2
  • неблокирующий Задание с самопроверкой по чек-листу
  • неблокирующий Тесты
Промежуточная аттестация

Промежуточная аттестация

  • 2025/2026 2nd module
    0.4 * Задание с проверкой от преподавателя по модулю 1 + 0.4 * Задание с проверкой от преподавателя по модулю 2 + 0.1 * Задание с самопроверкой по чек-листу + 0.1 * Тесты
Список литературы

Список литературы

Рекомендуемая основная литература

  • Дадян Э.Г. - Данные: хранение и обработка - 978-5-16-015663-7 - НИЦ ИНФРА-М - 2024 - https://znanium.ru/catalog/product/2149045 - 2149045 - ZNANIUM
  • Макшанов, А. В. Большие данные. Big Data / А. В. Макшанов, А. Е. Журавлев, Л. Н. Тындыкарь. — 3-е изд., стер. — Санкт-Петербург : Лань, 2023. — 188 с. — ISBN 978-5-507-46866-9. — Текст : электронный // Лань : электронно-библиотечная система. — URL: https://e.lanbook.com/book/322664 (дата обращения: 00.00.0000). — Режим доступа: для авториз. пользователей.
  • Толстобров, А. П.  Управление данными : учебник для вузов / А. П. Толстобров. — 3-е изд., перераб. и доп. — Москва : Издательство Юрайт, 2025. — 272 с. — (Высшее образование). — ISBN 978-5-534-14162-7. — Текст : электронный // Образовательная платформа Юрайт [сайт]. — URL: https://urait.ru/bcode/567678 (дата обращения: 04.07.2025).

Рекомендуемая дополнительная литература

  • Rajaraman, A., & Ullman, J. D. (2012). Mining of Massive Datasets. New York, N.Y.: Cambridge University Press. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=408850
  • Железнов, М. М. Методы и технологии обработки больших данных : учебно-методическое пособие / М. М. Железнов. — Москва : МИСИ – МГСУ, 2020. — 46 с. — ISBN 978-5-7264-2193-3. — Текст : электронный // Лань : электронно-библиотечная система. — URL: https://e.lanbook.com/book/145102 (дата обращения: 00.00.0000). — Режим доступа: для авториз. пользователей.

Авторы

  • Ахмедова Гюнай Интигам кызы