Занятие 41. Оптимизация запросов. Индексация
⚡ Кратко: суть занятия
Оптимизация запросов нужна, чтобы уменьшить время выполнения и расход ресурсов базы данных.
Главный инструмент урока — индекс: структура данных, которая помогает быстрее находить строки без полного просмотра таблицы.
Ключевые команды: CREATE INDEX, CREATE UNIQUE INDEX, CREATE FULLTEXT INDEX, EXPLAIN.
Минимальный пример: CREATE INDEX idx_students_age ON students(age), затем EXPLAIN SELECT * FROM students WHERE age = 20.
Индекс полезен для частых фильтров, сортировок и группировок, но он занимает место и замедляет вставку, обновление и удаление.
Топ-3 ошибки: индексировать все столбцы подряд, не проверять план через EXPLAIN, ждать пользы от индекса на очень маленькой таблице.
📖 О чём это занятие
- Разберём, что такое оптимизация запросов и почему индексы ускоряют поиск.
- Изучим типы индексов MySQL:
PRIMARY KEY,UNIQUE INDEX, обычныйINDEX,FULLTEXT INDEX, составной индекс. - Сравним работу запроса без индекса и с индексом.
- Выполним практику с таблицей
studentsи командойEXPLAIN.
📚 Что повторить перед изучением
- Занятие 40: Summary session 10 — завершение блока оконных функций.
- Занятие 13: создание таблиц — пригодится для практики
CREATE TABLE. - Занятие 06: ORDER BY — индексы могут помогать сортировке.
🎯 Что изучать дальше
Следующее занятие — Занятие 42: Функции.