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

Вопросы на собеседовании по PostgreSQL

553 вопроса по PostgreSQL с технических собеседований

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

Что проверяют на интервью

Как устроена подборка

На странице собраны вопросы по PostgreSQL — от проверки базовых принципов до практического применения и архитектурных решений. В подборке чаще встречаются темы: database, sql, postgresql.

Каталог

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

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

Ты интегрировал HashiCorp Vault с Kubernetes и перешёл на External Secrets Operator. Почему Sidecar Injector не подошёл, как ты структурировал Vault Policies для более чем 50 сервисов и как организовал ротацию учётных данных PostgreSQL?

Сравните модели доставки секретов, а не объявляйте Injector плохим. ESO синхронизирует секреты в Kubernetes, Injector доставляет их через Vault Agent; выбор зависит от приложения и требований безопасности.

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

[имя] спросил: Помимо PostgreSQL, с какими ещё базами данных работали? Redis использовали для кэширования?

Назовите реально использованные базы и их задачи. Для Redis уточните, что кешировалось, как задавались TTL и инвалидирование и что происходило при недоступности кеша.

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

Интеграция PostgreSQL с FastAPI‑приложением

Создайте пул PostgreSQL на время жизни приложения и выполняйте SQL в /menu через полученное из пула соединение. Не открывайте неограниченное число соединений и не блокируйте async-обработчик синхронным драйвером.

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

Объясните различия и совместимость строчных блокировок PostgreSQL: SELECT ... FOR UPDATE, FOR NO KEY UPDATE, FOR SHARE и FOR KEY SHARE. Чем они отличаются от оптимистичной блокировки?

FOR UPDATE конфликтует со всеми четырьмя режимами. NO KEY UPDATE допускает KEY SHARE; SHARE допускает SHARE и KEY SHARE; KEY SHARE блокирует UPDATE, но совместим с остальными названными режимами.

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

Насколько вам комфортно работать с PostgreSQL и чистым SQL вместо ORM, например SQLAlchemy?

Опишите уровень владения SQL на реальных задачах: join, агрегации, транзакции, планы и индексы. Уточните, где использовали ORM, а где осознанно переходили к чистому SQL.

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

В чём разница между индексами BRIN и B-Tree в PostgreSQL? Для каких типов таблиц, например логов и временных рядов, BRIN даст значительную экономию дискового пространства и превзойдёт B-Tree по скорости создания?

B-Tree индексирует значения с точным поиском по упорядоченной структуре, а BRIN хранит сводки по диапазонам страниц. BRIN особенно полезен на огромных таблицах с корреляцией значения и физического порядка данных.

Читать ответ
System Design

Про реляционные базы данных в общем (не конкретно про PostgreSQL): если база не справляется с объёмом данных, чтение/запись медленные — расскажи пошагово, от простого к сложному, как оптимизировать эту ситуацию.

Начните с измерения: какие запросы и ресурсы ограничивают систему. Затем оптимизируйте запросы, индексы, объём данных и транзакции; реплики, разделение нагрузки и шардирование рассматривайте после простых мер.

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

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

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

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

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

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

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

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

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

Читать ответ