- O MySQL também usa MVCC, apenas checkinnoDB. Mas, no PostgreSQL você pode alterar o FILLFACTOR para liberar espaço para futuras atualizações. Com isso, você pode criar um banco de dados que tenha espaço para dados atuais, mas também para algumas atualizações e exclusões futuras. Quando o autovacuum e o HOT fazem suas coisas corretamente, o tamanho do seu banco de dados pode ser estável.
- O blog é sobre versões antigas, muitas coisas mudaram e o PostgreSQL faz um trabalho muito melhor na compactação do que antigamente.
- A compactação também depende do tipo de dados, configuração e velocidade. Você precisa testar para ver como está funcionando para sua situação.
Fiz algumas conversões do MySQL para o PostgreSQL e em todos esses casos, o PostgreSQL era cerca de 10% menor (MySQL 5.0 => PostgreSQL 8.3 e 8.4). Esses 10% foram usados para alterar o fator de preenchimento nas tabelas mais atualizadas, que foram definidas para um fator de preenchimento de 60 a 70. A velocidade era muito melhor (sem mais problemas com mais de 20 usuários simultâneos) e o tamanho dos dados também era estável, sem MVCC indo fora de controle ou vácuo muito atrás.
MySQL e PostgreSQL são duas feras diferentes, PostgreSQL tem tudo a ver com confiabilidade onde o MySQL é popular.