Встречается на собеседованиях • сегодня

С какими трудностями сталкивался при работе с БД

Основные трудности при работе с БД в Python:

  1. Проблемы с соединениями - утечки соединений при неправильном закрытии, ограничение пула соединений. Решение - контекстные менеджеры или ORM.
python
# Плохо
conn = psycopg2.connect(...)
cursor = conn.cursor()
cursor.execute(query)
# забыли закрыть соединение

Хорошо

with psycopg2.connect(...) as conn:
with conn.cursor() as cursor:
cursor.execute(query)

text

2. **N+1 проблема** - когда ORM делает множество запросов вместо одного JOIN. Решение - `.select_related()` в Django, `.joinedload()` в SQLAlchemy.

3. **Блокировки и deadlocks** - при конкурентных операциях. Решение - правильные уровни изоляции, короткие транзакции.

4. **Миграции** - сложности с изменением схемы на проде. Решение - инструменты типа Alembic, тестирование миграций.

5. **Производительность** - отсутствие индексов, тяжелые запросы. Решение - анализ EXPLAIN, индексы, денормализация.

6. **Несоответствие типов** - между Python и БД. Решение - явное приведение типов, ORM.
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы