Встречается на 1% собеседований по Python
Какие знаешь способы оптимизации чтения БД
-
Индексация – создание индексов на часто используемых полях для ускорения поиска.
python# Пример создания индекса в SQLAlchemy class User(db.Model): __tablename__ = 'users' id = db.Column(db.Integer, primary_key=True) name = db.Column(db.String(100), index=True) # Индекс на поле name -
Пагинация – разбивка данных на страницы для уменьшения нагрузки.
python# Пример пагинации в Flask-SQLAlchemy users = User.query.paginate(page=1, per_page=10)
-
Ленивая загрузка (Lazy Loading) – загрузка связанных данных только при обращении.
python# SQLAlchemy: lazy='select' (по умолчанию) class Post(db.Model): comments = db.relationship('Comment', lazy='select') -
Жадная загрузка (Eager Loading) – предварительная загрузка связанных данных для избежания N+1 проблемы.
python# SQLAlchemy: joinedload from sqlalchemy.orm import joinedload posts = Post.query.options(joinedload(Post.comments)).all() -
Кэширование – сохранение результатов запросов (Redis, Memcached).
-
Оптимизация запросов – использование
selectвместоselect *, избегание подзапросов. -
Репликация и шардинг – распределение нагрузки между серверами.
-
Использование ORM-оптимизаций – например,
bulk_insert,updateвместо поштучных операций. -
Анализ запросов – инструменты типа
EXPLAINв PostgreSQL для выявления узких мест.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
Похожие вопросы
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы