Писал ли индексы в БД

Python Senior VK
Писал ли индексы в БД
Ответы
Да, писал индексы в БД. Они ускоряют поиск и сортировку данных, но замедляют вставку и обновление. **Пример с SQLAlchemy (PostgreSQL):** ``` from sqlalchemy import create_engine, Column, Integer, String, Index from sqlalchemy.ext.declarative import declarative_base Base = declarative_base() class User(Base): __tablename__ = 'users' id = Column(Integer, primary_key=True) email = Column(String, unique=True) name = Column(String) # Создание индекса для ускорения поиска по имени Index('idx_name', User.name) engine = create_engine('postgresql://user:pass@localhost/db') Base.metadata.create_all(engine) ``` **Когда использовать:** - Частые `WHERE`, `JOIN`, `ORDER BY` по полю. - Уникальные ограничения (`unique=True`). **Когда избегать:** - Частые `INSERT/UPDATE`. - Маленькие таблицы. Выбор индексов зависит от нагрузки и запросов.