User Tools

Site Tools


db:new

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
db:new [2025/10/08 08:42] – [🎯 Лабораторная работа 4. Анализ производительности] eugeneaidb:new [2025/10/08 08:53] (current) – [📈 Система оценивания] eugeneai
Line 1: Line 1:
 ====== Базы данных ====== ====== Базы данных ======
  
-{{topic>базы_данных&navbar}} +===== 🎓 Лабораторные работы: 🚀 ТОП-ИТ УРОВЕНЬ =====
- +
-===== 🎓 Лабораторные работы ===== +
- +
-==== 🎯 Лабораторная работа 1. Проектирование структуры БД ==== +
- +
-**Важно!** Согласовать модель с преподавателем до продолжения работы +
- +
-**Цель**Спроектировать структуру базы данных, соответствующую бизнес-требованиям и нормализованную до 3NF. +
- +
-**📋 Требования:** +
-^ Требование ^ Описание ^ +
-| **Требование 1** | Соответствие всем частям задания (структура + выходные документы) | +
-| **Требование 2** | 3-5 таблиц в базе данных | +
-| **Требование 3** | Нормализация до третьей нормальной формы | +
- +
-**🚀 Шаги выполнения:** +
-  - **Выбор задачи** из учебных пособий: +
-     * {{db:варианты_заданий_по_уд.pdf| Варианты заданий к.т.н. Сосинской С.С.}} +
-     * Задачи, сгенерированные [[db:nn_tasks|нейронной сетью]] +
-  - **Проектирование ER-диаграммы** в современных инструментах: +
-     * [[https://dbdiagram.io|DBDiagram]] (рекомендуется) +
-     * [[https://draw.io|Draw.io]] +
-     * [[https://plantuml.com|PlantUML]] +
-  - **Валидация модели** через [[https://github.com/eugeneai/lab-db-2025-1|Deepseek]] +
-  - **Согласование** полученной модели с преподавателем +
- +
-**📊 Пример проекта:** [[https://github.com/eugeneai/lab-db-2025-1|Github репозиторий]] +
- +
-==== 🎯 Лабораторная работа 2. Инсталляция БД на сервере ==== +
- +
-**Цель**: Практическое развертывание базы данных и работа с SQL. +
- +
-**🔧 Инструменты:** +
-  * **Клиент БД**: [[https://sql.iscnet.ru/pgadmin4|pgAdmin 4]] или [[https://dbeaver.io|DBeaver]] +
-  * **СУБД**: PostgreSQL 15+ +
- +
-**📋 Задачи:** +
-  - Преобразование ER-диаграммы в логическую модель +
-  - Проектирование физической модели +
-  - Создание DDL-запросов для PostgreSQL +
-  - Заполнение таблиц данными (минимум 4 строки) +
-  - Выполнение содержательных SELECT-запросов с JOIN 2-3 таблиц +
- +
-<code sql> +
--- Пример запроса с JOIN +
-SELECT u.name, o.order_date, p.product_name +
-FROM users u +
-JOIN orders o ON u.id = o.user_id +
-JOIN products p ON o.product_id = p.id; +
-</code> +
- +
-==== 🎯 Лабораторная работа 3. Представления и процедуры ==== +
- +
-**Цель**: Освоение механизмов абстракции данных и программных модулей. +
- +
-**📋 Задачи:** +
-  - Создание представлений для выходных документов +
-  - Разработка хранимых процедур с параметрами +
-  - Оптимизация запросов через представления +
- +
-<code sql> +
--- Пример создания представления +
-CREATE VIEW sales_report AS +
-SELECT c.name, SUM(o.amount) as total_sales +
-FROM customers c +
-JOIN orders o ON c.id = o.customer_id +
-GROUP BY c.name; +
-</code> +
- +
-==== 🎯 Лабораторная работа 4. Анализ производительности ==== +
- +
-**Цель**: Освоение методов анализа и оптимизации производительности БД. +
- +
-**📋 Задачи:** +
-  - Создание генератора данных (20 000 записей в каждой таблице) +
-  - Анализ планов выполнения запросов (EXPLAIN ANALYZE) +
-  - Оптимизация БД через индексы и настройки +
-  - Сравнение производительности до/после оптимизации +
- +
-**🔧 Инструменты:** +
-<CODE> +
-EXPLAIN (ANALYZE, BUFFERS)  +
-SELECT * FROM large_table WHERE condition; +
-</CODE> +
- +
-==== 🎯 Лабораторная работа 5. Триггеры и аудит ==== +
- +
-**Цель**: Реализация бизнес-логики на уровне БД и системы аудита. +
- +
-**📋 Задачи:** +
-  - Триггеры каскадного удаления для связей "один-ко-многим" +
-  - Триггеры аудита изменений (INSERT, UPDATE, DELETE) +
-  - Создание таблицы-журнала для отслеживания изменений +
- +
-<code sql> +
--- Пример триггера аудита +
-CREATE TRIGGER audit_customer_changes +
-    AFTER INSERT OR UPDATE OR DELETE ON customers +
-    FOR EACH ROW EXECUTE FUNCTION log_customer_changes(); +
-</code> +
- +
-===== 🚀 ТОП-ИТ УРОВЕНЬ =====+
  
 ==== 💡 Лабораторная работа 6. Репликация и кластеризация ==== ==== 💡 Лабораторная работа 6. Репликация и кластеризация ====
Line 218: Line 116:
 | Лаб 10. NoSQL | 25 | +5 к итогу | | Лаб 10. NoSQL | 25 | +5 к итогу |
  
-<wrap important>**Примечание:** Лабораторные 6-10 являются дополнительными и выполняются по желанию для повышения оценки</wrap>+**Примечание:** Лабораторные 6-10 являются дополнительными и выполняются по желанию для повышения оценки
  
 ===== 🔗 Ресурсы и контакты ===== ===== 🔗 Ресурсы и контакты =====
Line 238: Line 136:
  
 {{tag>базы_данных лабораторные_работы postgresql топ-ит}} {{tag>базы_данных лабораторные_работы postgresql топ-ит}}
 +
db/new.1759884120.txt.gz · Last modified: by eugeneai