LINUX.ORG.RU
решено ФорумAdmin

[postgreSQL] Избыточность использования дискового пространства после выполнения UPDATE

 


0

1

Имеется довольно большая таблица (44 миллиона записей). Над всеми записями в таблице были выполнены две операции UPDATE, такого характера:

update table_name set id=id+100 where id>=0;
После этого, использование дискового пространства этой таблицей увеличилось (приблизительно) в три раза (смотрю по остатку свободного места на диске). Вероятно, это фича: база хранит все предыдущие данные. Вот только это крайне неудобно когда речь идет о больших объемах. Как это отключить/исправить?

PostgreSQL установлен с репозитория. Текущая Ubuntu.

★★★
Ответ на: комментарий от no-dashi

Vacuum место не вернет. Vacuum full вернет, но dump/restore быстрее, особенно если индексов много

maxcom ★★★★★
()
Ответ на: комментарий от maxcom

Спасибо, попробую следующий раз через dump and restore. Я правильно понимаю, что это специальная фича и затертые записи можно возобновить? Кстати, это можно как-то отключить чтоб регулярно не пользоваться dump and restore или vacuum?

observer ★★★
() автор топика
Ответ на: комментарий от observer

Нет, это так работает mvcc. Отключить нельзя никак

maxcom ★★★★★
()
Ответ на: комментарий от observer

Vacuum в новых версиях автоматически работает, но место в систему он не отдает

maxcom ★★★★★
()
Ответ на: комментарий от exception13

не забудь еще за auto vacuum погуглить.

Гляну, спасибо

observer ★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.