Подготовка к интервью

Банк вопросов с собеседований

Разбирайте реальные вопросы, сверяйтесь с подробными ответами и готовьтесь по технологиям и компаниям.

3013 вопросов 1634 компании 353 технологии

Усильте резюме перед собеседованием

Проверьте, насколько резюме подходит выбранной позиции, и получите рекомендации по улучшению.

Анализ резюме
Сбросить

Каталог

Результаты поиска

Найдено: 3013
Теория

Как в PostgreSQL называется хранилище, которое отвечает за репликацию и восстановление данных? Как это происходит?

Это WAL — журнал предзаписи, хранящий записи изменений. Он позволяет восстановить состояние после сбоя и передавать изменения физическим репликам; это не отдельная копия всех таблиц.

Читать ответ
Теория

Как индексы B-Tree ускоряют SQL-запросы и когда они вредят?

B-Tree позволяет находить нужные ключи и диапазоны без полного просмотра таблицы и может помогать сортировке. Цена — дополнительное место и работа при вставках, обновлениях и удалениях.

Читать ответ
Теория

Как устроена изоляция транзакций на основе MVCC в PostgreSQL и зачем строкам скрытые поля xmin и xmax?

MVCC хранит версии строк и определяет их видимость по snapshot и состоянию транзакций. xmin связан с созданием версии, а xmax — с её удалением, заменой или блокировочными деталями.

Читать ответ
Теория

Как метаклассы Python используются в Django и SQLAlchemy для автоматической генерации полей моделей?

При создании класса ORM анализирует объявленные поля и формирует метаданные отображения. Django делает это через ModelBase; в SQLAlchemy механизм зависит от выбранного declarative API и версии.

Читать ответ
Теория

Что такое проблема переполнения идентификаторов транзакций (Transaction ID Wraparound) в PostgreSQL, почему она критична для больших баз данных и какую роль в её предотвращении играет процесс VACUUM?

PostgreSQL использует циклическое пространство обычных transaction ID. Старые версии строк нужно замораживать, иначе сравнение видимости станет небезопасным; anti-wraparound VACUUM предотвращает это.

Читать ответ
Лайвкодинг

Напишите SQL-запрос, который вернёт только те комбинации `name` и `last_name` из таблицы `users`, которые встречаются ровно один раз.

Сгруппируйте строки по name и last_name и оставьте группы с COUNT(*) = 1. DISTINCT не подходит: он убирает повторы, а не исключает повторяющиеся комбинации.

Читать ответ
Теория

Что такое индекс по выражению (Expression Index / Functional Index) в PostgreSQL? Какие накладные расходы на операции записи (INSERT/UPDATE) он влечёт и почему планировщик может отказаться от его использования, если типы данных в выражении запроса не совпадают?

Индекс по выражению хранит вычисленный ключ, например lower(email). Он ускоряет подходящие запросы, но требует вычисления и поддержки индексных записей при изменении данных.

Читать ответ