За счет чего индекс БД ускоряет запрос

Python Junior Рунити
За счет чего индекс БД ускоряет запрос
Ответы
Индексы в БД работают аналогично оглавлению в книге — они позволяют быстро находить данные без полного сканирования таблицы. **Основные принципы:** - **B-деревья** (чаще всего) — сбалансированные структуры, обеспечивающие поиск за O(log n). - **Хеш-индексы** — для точных совпадений (O(1)), но не поддерживают диапазонные запросы. - **Фильтрация** — индекс содержит только ключевые столбцы, уменьшая объем обрабатываемых данных. **Пример (SQL):** ``` -- Создание индекса CREATE INDEX idx_user_email ON users(email); -- Запрос использует индекс (если оптимизатор решит это эффективным) SELECT * FROM users WHERE email = 'test@example.com'; ``` **Нюансы:** - Индексы замедляют вставку/обновление (требуется поддержка структуры). - Избыточные индексы увеличивают объем хранилища. - Не все условия (например, `LIKE '%abc'`) могут использовать индекс.