King Fisher Ответов: 1

Как архивировать старые данные в postgresql


Поскольку в настоящее время я ожидаю, что кто-то посоветует мне процесс, который я собираюсь предпринять для архивирования БД.

У меня есть база данных(DB-1), которая имеет 2 очень большие таблицы, одна таблица имеет 25 ГБ данных, а другая-20 ГБ данных. что вызывает серьезные проблемы с производительностью даже у меня есть индексы.

Что я уже пробовал:

Таким образом, мы можем рассмотреть возможность архивирования старых данных с помощью приведенного ниже процесса,

1. Клон новой базы данных(БД-2) из существующей базы данных(БД-1).
2. Удалите старые данные из БД-1, чтобы в ней были только записи за последние 2 года.На случай, если мне понадобятся старые данные, можно подключить БД-2.
3. каждый месяц следует перемещать старые данные из БД-1 в БД-2 и удалять
перемещенные записи из БД-1.

Спасибо,

1 Ответов

Рейтинг:
0

Maciej Los

Цитата:
У меня есть база данных(DB-1), которая имеет 2 очень большие таблицы, одна таблица имеет 25 ГБ данных, а другая-20 ГБ данных. что вызывает серьезные проблемы с производительностью даже у меня есть индексы.


Кажется, ваш вопрос не об архивировании старых данных, а о том, как "сжать базу данных"?

Вы это видели: PostgreSQL: Документация: 11: 24.1. Рутинная Очистка Пылесосом[^] ?
Это тоже может быть полезно: Оптимизация и улучшение производительности PostgreSQL с помощью VACUUM, ANALYZE и REINDEX - Atlassian Documentation[^]


King Fisher

Привет Мацей,
как твои дела? Спасибо за ответ, я вижу, что автовакуум включен в БД. Речь идет не только о сжатии базы данных. Если я удалю старые данные, моя производственная БД будет иметь данные только за 2 года, что меньше, так что будет улучшение производительности системы.

Maciej Los

Привет, Король!
Много времени я не видел тебя на КП...
Спасибо, я в порядке. А ты как поживаешь?

King Fisher

Привет Мацей,
да, вообще-то у меня не было шанса.
Я в порядке, спасибо.