Olá a todos,
Vi o guia de atualização do PostgreSQL 18 para Discourse auto-hospedado:
Ele menciona que o processo de atualização requer uma quantidade significativa de espaço adicional em disco, então comecei a verificar meu uso de disco e o tamanho do banco de dados antes de tentar a migração.
Meu uso atual de disco:
/dev/sda1 97G 44G 54G 45% /
O tamanho do meu banco de dados do Discourse é de cerca de 21 GB. Percebi que a maior parte do espaço não é usada por publicações, mas por várias tabelas de estatísticas e logs.
As maiores tabelas são:
topic_views 5,2 GB
post_timings 1,9 GB
browser_pageview_events 1,8 GB
ai_api_audit_logs 1,6 GB
incoming_links 1,5 GB
user_auth_token_logs 1,2 GB
Para comparação:
posts 844 MB
Verifiquei os intervalos de dados:
topic_views:
2015-04-03 ~ 2026-08-03
incoming_links:
2015-04-09 ~ 2026-08-03
user_auth_token_logs:
2021-08-15 ~ 2026-08-03
ai_api_audit_logs:
2026-02-04 ~ 2026-08-03
browser_pageview_events:
2026-05-28 ~ 2026-08-03
Entendo que essas tabelas têm finalidades diferentes, mas não tenho certeza sobre quais períodos de retenção são considerados razoáveis para uma instância de produção do Discourse.
Minhas perguntas:
-
Para
user_auth_token_logs, por quanto tempo vocês geralmente mantêm os registros?- 6 meses?
- 1 ano?
- Mais tempo para auditoria de segurança?
-
Para tabelas como
incoming_links,topic_viewsepost_timings, vocês normalmente mantêm todos os dados históricos ou removem registros mais antigos periodicamente? -
Existe algum procedimento recomendado de limpeza ou manutenção antes de uma atualização de versão principal do PostgreSQL?
Até agora, não excluí nada. Executei apenas:
vacuumdb --analyze discourse
Meu objetivo é liberar espaço em disco desnecessário antes de atualizar para o PostgreSQL 18, mantendo a funcionalidade normal do Discourse e informações úteis de auditoria.
Agradeceria muito por quaisquer recomendações ou experiências reais de pessoas que administram sites Discourse auto-hospedados.
Obrigado!