Какие индексы применял на практике

Python Middle Без компании
Какие индексы применял на практике
Ответы
На практике чаще всего использовал следующие типы индексов в PostgreSQL и MySQL: - **B-tree** – стандартный индекс для большинства запросов с равенством и диапазонами: ``` CREATE INDEX idx_users_email ON users(email); ``` - **Partial indexes** – для ускорения запросов по подмножеству данных: ``` CREATE INDEX idx_active_orders ON orders(status) WHERE status = 'active'; ``` - **Composite indexes** – для запросов с несколькими условиями (важен порядок столбцов): ``` CREATE INDEX idx_user_activity ON logs(user_id, created_at); ``` - **Unique indexes** – для обеспечения уникальности: ``` CREATE UNIQUE INDEX idx_unique_username ON users(username); ``` - **GIN/GiST** – для полнотекстового поиска и JSON данных в PostgreSQL: ``` CREATE INDEX idx_gin_content ON articles USING gin(to_tsvector('english', content)); ``` При выборе индексов всегда анализировал EXPLAIN запросов и учитывал trade-off между скоростью выборки и накладными расходами на вставку/обновление.