HashData助力PostgreSQL 16正式发布,展现中国智慧

发表时间: 2023-10-13 17:12

近日,PostgreSQL全球开发小组正式发布PostgreSQL16 测试版本。这次新版本中,在查询并行性、批量数据加载和逻辑复制等方面有着显著改进。

在该版本制定过程中,来自中国的开发者贡献巨大。HashData作为国内PG生态重要建设者与实践者,在PostgreSQL 16版本参与了数十项代码贡献,为PostgreSQL技术创新发展贡献“中国智慧”。

性能与可扩展性大幅强化

PostgreSQL是一款以功能强大和可靠稳健而闻名的数据库管理系统,受益于全球开发者社区源源不断的贡献,已成为各类组织机构的首选开源关系型数据库

PostgreSQL 16版本在查询、批处理和逻辑复制的性能都有明显改进,同时用户也能够定义访问控制规则,让数据管理更加灵活。

  • 批次加载性能提升

官方指出,在最新版本中,无论是单一或是并行计算中,当用COPY语句进行批次加载时,其性能可获得300%的提升。同时,PostgreSQL 16也对使用libpq的客户端,添加负载均衡支持,且对VACUUM操作进行改良,减少完整表格冻结操作。

  • 硬件指令集加速

此外,PostgreSQL 16在x86和ARM架构上使用SIMD的CPU加速功能,所以在处理ASCII和JSON字符串、数组和子事务搜索时性能大幅提升。

  • 更灵活的扩展性

PostgreSQL 16 为用户提供了更多方法来横向扩展工作负载,用户可以用更多新的方式来分析和管理数据。

HashData贡献核心力量

以WAL操作的函数修复为例。在PostgreSQL系统中,WAL log是用于保证数据一致性和事务完整性的关键性技术,在数据库恢复、高可用、流复制、逻辑复制等模块中扮演着极其重要的角色。

在PostgreSQL 16中,WAL系统进行了一些重要的改进,这其中包括HashData技术专家对关键函数的修复。

Postgres 对WAL日志操作有一套严格的步骤要求(详见src/backend/access/transam/README)。在上个版本中, GIN索引进行快速插入时的操作步骤执行没有遵循正确的流程。这将导致一些依赖于WAL的功能产生潜在错误,包括淘汰缓存页、脏页刷磁盘、checkpoint等。

图:HashData技术专家贡献信息

HashData技术专家参与修复了在GIN索引插入时,WAL日志操作的顺序问题。这一改进提高了系统性能、复制和崩溃恢复能力,使PostgreSQL更加稳定易用。

在新发布的版本中,HashData技术专家团队以代码编写、审核、检测等方式参与了数十项开源贡献,为PostgreSQL性能改进和提升提供了有力支持。

一直以来,HashData拥抱开源、包容开放的文化精神为技术创新提供了得天独厚的土壤和营养,也吸引了众多热爱技术和开源文化的工程师的加入。

HashData基于 PostgreSQL 14内核开发的下一代开源分布式数据库CloudberryDB也已经开源,正式版本即将发布,敬请期待!我们也欢迎更多对数据库、Postgres、开源感兴趣的伙伴加入我们,一起打造更好用、更智慧的数据库!