Чем отличается EXPLAIN от EXPLAIN ANALYZE в PostgreSQL?
EXPLAIN показывает оценочный план без обычного выполнения запроса. EXPLAIN ANALYZE действительно выполняет его и добавляет фактические строки, циклы и время узлов.
Читать ответПодготовка к интервью
553 вопроса по PostgreSQL с технических собеседований
Что проверяют на интервью
На странице собраны вопросы по PostgreSQL — от проверки базовых принципов до практического применения и архитектурных решений. В подборке чаще встречаются темы: database, sql, postgresql.
Каталог
EXPLAIN показывает оценочный план без обычного выполнения запроса. EXPLAIN ANALYZE действительно выполняет его и добавляет фактические строки, циклы и время узлов.
Читать ответСначала остановлю выпуск и исправлю проверку принадлежности данных пользователю. Ускорение не оправдывает утечку чужих транзакций, а нестабильность теста не делает нарушение допустимым.
Читать ответНужны наблюдаемость, проверенное резервное копирование, контроль роста данных и ограничение нагрузки. При деградации сначала определите, где ожидание: CPU, диск, locks, соединения или план запроса.
Читать ответB-Tree подходит для равенства, диапазонов и сортировки; GIN — для поиска компонентов сложного значения; GiST — расширяемая структура для пространственных и других специализированных операторов.
Читать ответНет, у таблицы PostgreSQL может быть только одно ограничение PRIMARY KEY. Оно может включать несколько колонок; дополнительные уникальные ограничения не являются вторым первичным ключом.
Читать ответСначала разделите ожидание соединения, сеть, блокировки и собственно выполнение SQL. Низкий CPU не исключает задержки из-за пула, диска или locks; откат без локализации может не помочь.
Читать ответСначала прекращайте приём новой работы и организуйте контролируемое завершение зарегистрированных задач до закрытия пула БД. Для гарантии восстановления после убийства Pod нужна сохранённая очередь или запись задания.
Читать ответЧастые UPDATE и DELETE создают мёртвые версии строк и индексные записи, которые не исчезают немедленно. Размер также включает свободное место, индексы и возможные TOAST-данные.
Читать ответНе выпускайте образ с невоспроизводимой готовностью зависимостей. Добавьте ограниченное ожидание/повторы подключения, корректные probes и интеграционную проверку в окружении, похожем на Kubernetes.
Читать ответЭто WAL — журнал предзаписи, хранящий записи изменений. Он позволяет восстановить состояние после сбоя и передавать изменения физическим репликам; это не отдельная копия всех таблиц.
Читать ответMVCC хранит версии строк и определяет их видимость по snapshot и состоянию транзакций. xmin связан с созданием версии, а xmax — с её удалением, заменой или блокировочными деталями.
Читать ответEXPLAIN показывает оценённый план без выполнения запроса, а EXPLAIN ANALYZE действительно выполняет его и добавляет фактические измерения. Это особенно важно для изменяющих запросов.
Читать ответ