После crash таблица PostgreSQL осталась, а данные исчезли?
Проверьте:
CREATE UNLOGGED TABLE ...
UNLOGGED table не crash-safe.
После crash или unclean shutdown PostgreSQL автоматически очищает её содержимое. Сама relation при этом остаётся.
Эти данные также не реплицируются на standby.
Поэтому UNLOGGED — не просто «более быстрая таблица».
Перед использованием спросите:
— можно ли потерять всё содержимое;
— есть ли source of truth для восстановления;
— нужны ли данные на standby;
— что сделает приложение с пустой таблицей после аварии;
— действительно ли WAL является bottleneck.
Для проверки:
pg_class.relpersistence = 'u'
означает unlogged.
И важная оговорка: речь именно о crash / unclean shutdown. Штатный restart сам по себе не означает очистку содержимого.
Сохраните вопросы, которые стоит задать до использования UNLOGGED для рабочих данных.
#УЦФОРС #PostgreSQL #DBA #ПроизводительностьБД #Эксплуатация
Проверьте:
CREATE UNLOGGED TABLE ...
UNLOGGED table не crash-safe.
После crash или unclean shutdown PostgreSQL автоматически очищает её содержимое. Сама relation при этом остаётся.
Эти данные также не реплицируются на standby.
Поэтому UNLOGGED — не просто «более быстрая таблица».
Перед использованием спросите:
— можно ли потерять всё содержимое;
— есть ли source of truth для восстановления;
— нужны ли данные на standby;
— что сделает приложение с пустой таблицей после аварии;
— действительно ли WAL является bottleneck.
Для проверки:
pg_class.relpersistence = 'u'
означает unlogged.
И важная оговорка: речь именно о crash / unclean shutdown. Штатный restart сам по себе не означает очистку содержимого.
Сохраните вопросы, которые стоит задать до использования UNLOGGED для рабочих данных.
#УЦФОРС #PostgreSQL #DBA #ПроизводительностьБД #Эксплуатация