Чем Greenplum отличается от PostgreSQL?
Greenplum — распределённая MPP-СУБД с PostgreSQL-корнями, ориентированная на аналитическую обработку. PostgreSQL обычно выполняет запрос в пределах одного экземпляра.
Читать ответПодготовка к интервью
553 вопроса по PostgreSQL с технических собеседований
Что проверяют на интервью
На странице собраны вопросы по PostgreSQL — от проверки базовых принципов до практического применения и архитектурных решений. В подборке чаще встречаются темы: database, sql, postgresql.
Каталог
Greenplum — распределённая MPP-СУБД с PostgreSQL-корнями, ориентированная на аналитическую обработку. PostgreSQL обычно выполняет запрос в пределах одного экземпляра.
Читать ответДля надёжной загрузки используйте согласованный начальный снимок и CDC по WAL. Простой курсор id > last_id может пропустить поздно закоммиченную строку.
Читать ответНезависимые шарды PostgreSQL не получают глобальную уникальность от локального PRIMARY KEY. Нужны согласованная генерация ID или маршрутизация по уникальному ключу.
Читать ответВ PostgreSQL можно различить физические версии строк через ctid и удалить лишние по ROW_NUMBER. Для значений 1, 1, 2 останутся 1 и 2.
Читать ответУскорение PostgreSQL начинают с плана и измерений: уменьшают лишнее чтение, исправляют joins, выбирают индексы и устраняют ожидания. Настройки подбирают под нагрузку.
Читать ответPostgreSQL разбирает и анализирует SQL, применяет rewrite-правила, строит план и исполняет его, возвращая видимые транзакции строки клиенту.
Читать ответБлокировки возникают при конкурирующих операциях над одними ресурсами: обновлении строк, проверке ограничений и DDL. MVCC уменьшает конфликты чтения, но не отменяет locks.
Читать ответОпишите реальные операции в PostgreSQL: проектирование таблиц, запросы, индексы, транзакции, планы выполнения и сопровождение загрузок.
Читать ответОбычный VACUUM освобождает место от ненужных версий строк для повторного использования внутри таблицы. VACUUM FULL переписывает таблицу компактно и обычно возвращает больше места файловой системе.
Читать ответMVCC позволяет транзакциям читать подходящие версии строк, уменьшая конфликты чтения и записи. VACUUM освобождает место от версий, больше не нужных ни одной транзакции.
Читать ответPostgreSQL поддерживает B-tree, Hash, GiST, SP-GiST, GIN и BRIN. B-tree применим к равенству и диапазонам, Hash — к равенству. CLUSTER физически переупорядочивает таблицу, но не поддерживает этот порядок постоянно.
Читать ответВыбор между PostgreSQL и специализированным хранилищем временных рядов зависит от потока записей, срока хранения, запросов и требований к транзакциям. Для умеренной нагрузки обычного PostgreSQL может быть достаточно.
Читать ответ