Практикум на ЭВМ (417)/2019
Материал из MachineLearning.
- Обязательный курс для студентов кафедры ММП 4 курса, читается в 7 семестре.
- Зачёт с оценкой.
- Преподаватели: Майсурадзе Арчил Ивериевич.
- Осенью 2019 года занятия проходят по средам с 10:30 до 12:05 в аудитории 612.
Содержание |
План занятий
Занятие 1
Предисловие.
Введение в бизнес-анализ данных. SQL, его роль в информационно-аналитических системах. Основные виды моделей в аналитической деятельности. Модели в науке и ИТ. Хранение и анализ данных в бизнесе.
Информация о курсе. Используемые технологии.
Занятие 2
SQL как язык работы с данными: запросы, DDL, DML, DQL.
Модель «таблица данных» в реляционной модели. Интерпретация. Атрибуты. Первичный ключ. Учебная таблица CD_CUSTOMERS.
Основы работы в клиенте MySQL Workbench: схемы, таблицы, создание таблиц из интерфейса, создание запроса. Запуск запроса данных из таблицы, остановка слишком долгого запроса. Первое определение таблицы (CREATE TABLE). Создать новую таблицу как результат запроса данных (CREATE TABLE as SELECT). Вставить новые строки в существующую таблицу (INSERT).
Основные типы данных и базовые операции с ними. Числовые типы. Дата и время. Строки. Неявное преобразование типов.
Модель «результат запроса» в реляционной модели. Понятие о recordset.
Базовый запрос SELECT. Именование столбцов (AS). Ограничение размера ответа (LIMIT, TOP). Фильтрация (WHERE). NULL. Отбрасывание дубликатов (DISTINCT). Функции над значениями одного элемента. Условный оператор (CASE). Операции с датами. Операции со строками. Упорядочивание (ORDER BY).
Общий вид SELECT от одной таблицы (без агрегирования, без группирования).
Функции агрегации (без групп).
Задание 1.
Занятие 3
Задача о числе возвращаемых строк.
Подзапросы в IN (множество). Подзапросы в FROM (таблица). Подзапросы в WHERE (скаляр).
Группирование по категориям (GROUP BY). Фильтрация по категориям (HAVING). Общий вид SELECT от одной таблицы.
Домашнее задание 2.
Занятие 4
Закрепление пройденного материала. Разбор условий задач из задания 1. Разбор типичных ошибок при решении задач из задания 1.
Занятие 5
Начинаем изучать отношения между несколькими таблицами. Описание новых таблиц в учебной БД. Логическая модель данных в учебной БД. Декартово произведение множеств. Декартово произведение таблиц. Сравнение декартова произведения множеств и таблиц. Соединение двух таблиц: общий взгляд. Соединение таблиц в SQL. Соединение CROSS JOIN. Соединение с фильтром INNER JOIN. Соединение LEFT JOIN. Соединение RIGHT JOIN. Соединение FULL JOIN. Домашнее задание 3.
Занятие 6
Объединение множеств. Оператор UNION. Арифметическая сумма мультимножеств. Оператор UNION ALL. Разность множеств. Реализация разности множеств через IN. Реализация разности множеств через JOIN. Условия ANY и ALL. Связанные подзапросы. Условие EXISTS. Домашнее задание 4.
Занятие 7
Аналитическая ценность информации. Рост объёма ценной информации. Параллельные вычислительные системы, типы систем (ASMP, SMP, MPP). Массивно-параллельная архитектура. Ключ распределения таблицы. Redistribute Motion, Broadcast Motion. Отказоустойчивая архитектура. Различия синтаксиса PostgreSQL и MySQL. Особенности DDL для MPP системы (distributed by, partition by). Домашнее задание 5.
Занятие 8
Разбор задач и решений задания 3.
Занятие 8+
Понятие оконной функции. Синтаксис выражений с оконными функциями. Сравнение с GROUP BY. Ранжирующие функции. Агрегатные функции. Аналитические функции. Домашнее задание 5.
Занятие 9
Разбор задач и решений задания 4.
Занятие 10
Разбор задач и решений задания 5.
Занятие 10+
Виды моделей данных. Модель «сущность-связь» (ER-модель). Виды отношений (связей). Crow’s foot notation. Концептуальная модель данных. Пример для сети ресторанов. Логическая модель данных. Внешний ключ. Развязочная таблица (таблица-связь). Физическая модель данных. Подходы к проектированию логической модели. Модель нормализованная (нормальные формы). Модели Звезда и Снежинка. Slowly Changing Dimension. Модель Data Vault.
Занятие 11
Описание продаж в розничной сети. Проектирование моделей Нормализованная, Звезда, Data Vault. Постановка задания 7.
Занятие 12
Доклады групп. Защита задания 7.
Занятие 13
Загрузка данных. Интеграция данных. Архитектуры систем интеграции: консолидация, федерализация, распространение, сервисный подход. // Примечание. У одних авторов консолидация - это разновидность интеграции. У других авторов интеграция - это этап консолидации.. Data fusion («слияние данных», «соединение данных»), Duplicate Record Detection (Identity resolution, Record linkage, Data Deduplication) («сопоставление записей», «вероятностное соединение», «нестрогое соединение», «нестрогое соответствие»). Проблемы интеграции: несоответствие схем данных, несоответствие собственно данных. Update (обновление данных). Аудит. Staging Area (плацдарм). Постановка задания 8.
Занятие 14
Доклады групп. Защита задания 8. Подведение итогов.
Занятия
Дата | № занятия | Тема | Материалы | Задания |
---|---|---|---|---|
5 сентября 2016 | 1 | Предисловие | Проверить доступ к стенду | |
Введение в бизнес-анализ данных. SQL и его роль в анализе данных | ||||
Информация о курсе | слайды | |||
12 сентября 2016 | 2 | Моделирование предметной области | слайды | |
Основы | слайды | Задачи на последних слайдах | ||
19 сентября 2016 | 3 | Основы + подзапросы + GROUP BY | слайды | Задачи на последних слайдах |
26 сентября 2016 | 4 | Закрепление пройденного (разбор первого домашнего задания) | слайды | |
3 октября 2016 | 5 | JOIN | слайды | Задачи на последних слайдах |
10 октября 2016 | 6 | Подзапросы | слайды | Задачи на последних слайдах |
17 октября 2016 | 7 | MPP | слайды | Задачи на последних слайдах |
24 октября 2016 | 8 | Разбор задания и оконные функции | ||
31 октября 2016 | 9 | Оконные функции | слайды | Задачи на последних слайдах |
14 ноября 2016 | 10 | Модели данных | слайды | |
28 ноября 2016 | 11 | Проектная работа | ||
5 декабря 2016 | 12 | Проектная работа | слайды | Задание на слайдах |
12 декабря 2016 | 13 | Проектная работа | слайды | Задание на слайдах |
19 декабря 2016 | 14 | Проектная работа и подведение итогов |
Практические задания
Задания указаны в расписании занятий. Срок сдачи заданий (если не оговорено) — начало ближайшего занятия.
Система оценивания
Каждая сданная задача оценивается с первой попытки как решенная верно или неверно. Если задача была решена неверно, необходимо до конца семестра сдать правильное решение. Задачи в сумме дают 75% баллов, ещё 25% отводится на проектную работу в группах. Финальная оценка зависит от количества набранных баллов.