Otimização AVX

PostgreSQL 17 oferece otimização AVX-512 e melhorias de até 2x no desempenho de gravações

PostgreSQL 17 introduz otimizações poderosas, como a função bit_count com AVX-512 e melhorias na camada de I/O, trazendo até 2x mais desempenho de gravação. Recursos como JSON_TABLE e avanços em replicação lógica também estão entre as novidades.

Ilustração representando o lançamento do PostgreSQL e o anúncio da descontinuação do suporte a senhas MD5

PostgreSQL 17 foi oficialmente lançado como a mais recente versão anual desse robusto servidor de banco de dados SQL amplamente utilizado. O destaque desta versão inclui otimizações de desempenho significativas, especialmente com a implementação da função otimizada bit_count utilizando AVX-512. De acordo com a Intel, essa otimização trouxe um aumento de desempenho de 48%. Além disso, o PostgreSQL 17 agora conta com um escape de JSON otimizado para SIMD, proporcionando até 4x mais desempenho em consultas JSON.

Principais melhorias no PostgreSQL 17

Uma das mudanças mais impactantes desta versão é a nova estrutura de memória interna para o processo de vacuum, que consome até 20x menos memória, otimizando a velocidade de execução e liberando recursos para outras operações. Outra grande melhoria está na camada de I/O, onde workloads de alta concorrência podem observar até o dobro de desempenho em gravações, graças às melhorias no processamento de write-ahead log (WAL).

Além disso, o PostgreSQL 17 traz avanços no suporte a JSON, com a adição do comando JSON_TABLE, permitindo que os desenvolvedores convertam dados JSON em tabelas PostgreSQL padrão. Esse lançamento também melhora a replicação lógica, simplificando o processo de atualização para novas versões sem necessidade de reinicializar os slots de replicação.

Melhorias no desempenho e novas funcionalidades

Os ganhos de desempenho não se limitam à memória e ao I/O. Esta versão também oferece melhorias em índices, especialmente para consultas que utilizam cláusulas IN com índices B-tree. Além disso, os índices BRIN agora suportam construção paralela, acelerando o processo de indexação em grandes conjuntos de dados. Outras melhorias no planejamento de consultas incluem otimizações para restrições NOT NULL e melhor processamento de common table expressions (CTEs).

Outras adições notáveis incluem novas funcionalidades para o comando MERGE, suporte para backups incrementais via pg_basebackup, e até 2x mais desempenho ao exportar grandes volumes de dados usando o comando COPY.

Expansão da experiência do desenvolvedor

PostgreSQL 17 continua a expandir a robustez da experiência do desenvolvedor. Esta versão adiciona mais suporte para expressões jsonpath e novos construtores SQL/JSON, como JSON_SERIALIZE e JSON_VALUE. O suporte a MERGE também foi aprimorado, permitindo a atualização de views e a inclusão da cláusula RETURNING. Para grandes volumes de dados, o comando COPY agora pode continuar mesmo quando erros de inserção ocorrem, graças à nova opção ON_ERROR.

Além disso, a versão 17 do PostgreSQL melhora o gerenciamento de segurança, com a introdução de novas opções de TLS e o papel predefinido pg_maintain, que concede permissões para realizar operações de manutenção.

Conclusão

Com essas melhorias de desempenho e novas funcionalidades, o PostgreSQL 17 reafirma seu lugar como um dos bancos de dados mais avançados e confiáveis do mundo, garantindo eficiência tanto para novos workloads quanto para sistemas críticos. Mais detalhes sobre as novidades dessa versão estão disponíveis no site oficial do PostgreSQL.