powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / куда деть старые данные?
10 сообщений из 10, страница 1 из 1
куда деть старые данные?
    #39194951
kkv79
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
у меня есть таблица с заказами
она постоянно растёт.
есть текущие заказы и есть завершённые.
завершённые заказы я помечаю end_=true
работа идёт по заказам where end_ is null
у меня есть индекс по этому полю
Код: sql
1.
2.
3.
CREATE INDEX orders_idx21 ON public.orders
  USING btree (end_)
  WHERE (end_ IS NULL);


в принципе всё работает быстро
но с каждым месяцем сервак всё больше и больше кушает оперативы.

просто грохнуть старые данные нельзя, ибо отчёты могут пригодится за прошлые годы

что бы такого сделать, чтоб и отчёты работали и память при этом не кушало?
...
Рейтинг: 0 / 0
куда деть старые данные?
    #39194970
Фотография vyegorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kkv79,

Что значит "кушает память"? Покажите вывод системных утилит демонстрирующий ситуацию.
...
Рейтинг: 0 / 0
куда деть старые данные?
    #39195573
kkv79
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
куда деть старые данные?
    #39195576
kkv79
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
новые клиенты стартуют с 2Gb оперативы
...
Рейтинг: 0 / 0
куда деть старые данные?
    #39195597
Alexius
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kkv79,

аппетиты по памяти у базы регулируются через shared_buffers и work_mem/max_connections. то что там 2ГБ это не значит что backend для чего-то 2ГБ сожрал, в это поле входит и разделяемая память (shared_buffers).
...
Рейтинг: 0 / 0
куда деть старые данные?
    #39195666
Фотография vyegorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kkv79,

Вывод `free -m` более информативен для общей картины по памяти.
...
Рейтинг: 0 / 0
куда деть старые данные?
    #39195702
kkv79
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
# free -m
             total       used       free     shared    buffers     cached
Память:      55360      50663       4696      13901         21      18506
-/+ буферы/кэш:      32136      23224
Swap:        56319          0      56319
...
Рейтинг: 0 / 0
куда деть старые данные?
    #39195737
Фотография vyegorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kkv79,

55Гб всего, 32 реально заняты, 23 свободны (однако ядро 18 использует под кэши, может в любой момент отдать по запросу).

Теперь надо эту картинку мониторить.
Если во второй строчке (там где "-/+ буферы/кэш:") второе число становиться маленьким, да ещё и своп начинает расти — вот тут уже проблемы и надо разбираться.
...
Рейтинг: 0 / 0
куда деть старые данные?
    #39196245
Oleg Bartunov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kkv79,

читай про pg_pathman в блоге у Саши Короткова http://akorotkov.github.io/blog/2016/03/04/pg_pathman-beta-release/ и тебе будет счастье :)
...
Рейтинг: 0 / 0
куда деть старые данные?
    #39196319
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kkv79,


если бд сделана правильно, используются индексы, то старые данные в таблицах тебе не помешают. Просто храни их, вечно. В этом нет никаких сложностей пока размеры таблиц не превысят порог примерно в миллиард записей.

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


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