powered by simpleCommunicator - 2.0.33     © 2025 Programmizd 02
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Автоматизация Vacuum full
2 сообщений из 2, страница 1 из 1
Автоматизация Vacuum full
    #40138961
Alex_C
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день,
подскажите, есть БД с timescaleDb, т.е вместо одной большой таблицы - множество небольших, число которых регулярно увеличивается -
_hyper_1_1_chunk, _hyper_1_2_chunk и далее.
Как лучше автоматизировать Vacuum Full для всех таблиц кроме последней (в последнюю пишется в данный момент, поэтому full для нее не вариант).
?
...
Рейтинг: 0 / 0
Автоматизация Vacuum full
    #40138966
CerebroSQL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alex_C [игнорируется] 

Много разных способов на самом деле, самый простой (ну и удобно расширять функционал и логику) скорее всего через dblink
Код: PL/pgSQL
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
create table vacuum_log (table_name text, date_ timestamp)  ;

do
$$
declare
  i record;
  sql_ text;
  sql_exec text;
begin
 sql_ := 'insert into vacuum_log(table_name, date_) values ($1, now())';
for i in (select relname,
       n.nspname from pg_catalog.pg_class c join pg_catalog.pg_namespace n on c.relnamespace = n.oid
        where relkind = 'r'
          and n.nspname = '...') loop
  sql_exec := 'vacuum full '||i.nspname ||'.'||i.relname;
  perform dblink('host=localhost
                  user=postgres
                  password=****
                  dbname=***', sql_exec) ;
  execute format(sql_) using i.nspname ||'.'||i.relname;
  end loop;
end;
$$
Логику можно зашить любую, добавить сохранение размера, любой способ выбора объектов для вакуума ну и так далее.

На питоне код будет не на много сложнее.
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Автоматизация Vacuum full
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]