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

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

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

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

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

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

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

Каталог

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

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

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

PostgreSQL должен вовремя замораживать старые версии строк, чтобы циклические 32-битные XID не нарушили определение видимости. Anti-wraparound VACUUM — часть защиты от этой проблемы, а не просто уборка мусора.

Читать ответ
Поведенческий

Приходилось ли вам оптимизировать SQL-запросы или анализировать производительность? Какие инструменты использовали? Что показывает EXPLAIN?

EXPLAIN показывает выбранный план: порядок операций, типы сканирования, соединения и оценки стоимости и строк. EXPLAIN ANALYZE дополнительно выполняет запрос и показывает фактическую работу, поэтому требует осторожности.

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

Как соотносятся пессимистическая и оптимистическая блокировки со строчными и табличными блокировками PostgreSQL? Что такое LOCK TABLE?

Оптимистическая и пессимистическая блокировки — стратегии согласования, а row/table locks — механизмы БД. Оптимистический UPDATE с проверкой версии тоже использует физические блокировки при записи.

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

Атомарное условное списание баланса в PostgreSQL

Более зрелый вариант — атомарное условное списание в PostgreSQL с проверкой результата. Оно защищает общий баланс между процессами и экземплярами приложения, а не только внутри одного event loop.

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

Представьте ситуацию: в PostgreSQL выполняется тяжелый аналитический запрос SELECT COUNT(*) FROM large_table. Поможет ли индекс по первичному ключу ускорить этот запрос? Почему?

Индекс первичного ключа иногда помогает через index-only scan, если он меньше таблицы и видимость строк можно проверить без чтения heap. Но точный COUNT(*) всё равно требует просмотра данных, а не O(1) счётчика.

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

Какие протоколы передачи данных используются в NoSQL базах данных (Redis, MongoDB, Elasticsearch)?

Redis использует RESP, MongoDB — собственный бинарный wire protocol с BSON, Elasticsearch для клиентского API обычно использует HTTP(S) и JSON. Это прикладные протоколы, а не разновидности TCP.

Читать ответ
Поведенческий

Как часто и в каком виде вы работали с SQLAlchemy в Точке?

Ответ должен опираться на ваш реальный опыт в названной компании: ORM или Core, синхронный либо асинхронный доступ, типичные запросы и управление транзакциями. По вопросу нельзя установить чужие обязанности.

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

Как бы вы разработали систему индексирования в PostgreSQL для таблицы с городами России, чтобы поиск по городам был оптимален?

Индекс выбирают под запросы: B-tree для равенства и сортировки, подходящий индекс для префикса, trigram для подстроки или нечёткого поиска. Для небольшой таблицы последовательное чтение может быть быстрее.

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

Что такое Cache Penetration (запросы по несуществующим ключам) и как фильтр Блума помогает защитить базу данных?

Cache penetration — повторные промахи кеша для данных, которых нет и в БД. Bloom filter позволяет быстро отклонить заведомо отсутствующие ключи, но допускает ложноположительные ответы.

Читать ответ