MariaDB Server 10.4候选版发布,添加集群串流复制功能

与MySQL兼容的数据库MariaDB,在MariaDB OpenWorks 2019上推出了MariaDB Server 10.4候选版。除了增加第二个SQL标准时序功能,在集群复制加入串流复制功能,交易的大小不再受到限制,而在安全方面也增加了无密码身份验证功能。

在10.4中,用户现在可以对即时的数据进行即时操作,包括删除数据行,或是改变数据行的排序,甚至是增加VARCHAR数据行的长度,这使得原本需要较长时间的操作,现在可以即时完成。

在MariaDB 10.4中,官方加入了第二个SQL标准时序功能,除了10.3加入的系统版本表格(System-Versioned Table),现在还增加了应用程序时间版本表格(Application Time- Versioned Tables),让MariaDB现成为支持双时序的数据库。

10.3加入的系统版本表格,当表格中某一数据列更改了,将会使得先前数据列的版本,被加上系统时间戳,存储在历史纪录中。现在于10.4新加入的应用程序时间版本表格,可以让应用程序的开发者定义时间区间,开发者可以决定什么数据以及何时产生的数据,在表格中是合法的,开发者可以为一天中的不同时,设置不同的数据列集。

在高可用性方面,过去MariaDB Server使用了Galera 3函数库,以创建集群确保数据和每一次的更新,都同时应用到两个以上的位置,而官方与Galera的供应商Codership合作,在10.4中采用了Galera 4,添加了串流复制功能,能处理任何大小的交易,这也代表现在交易不再存在限制。

MariaDB 10.4的Optimizer也增加了新功能,现在Optimizer的默认值已经全面更新。官方提到,调整Optimizer必须非常的小心,因此他们添加了Optimizer Trace,以关注Optimizer的执行细节以及完成的工作。而Analyze Table功能的执行速度,在10.4中获得大幅改进,因为收集数据列的统计数据,现在使用随机列采样。

10.4也支持下推优化(Pushdown Optimization),通过将轻量级的条件,推送到具体化IN的子查询中,并将HAVING短句推送到带有GROUP BY的WHERE查询子句中,完成优化的目的。另外,还加入了内存的主键以及Row Id过滤器,可以帮助在链接表格(Joined Table)上,以狭窄区间条件链接查询。

在安全功能上,MariaDB 10.4支持帐户锁定功能,能为密码设置过期政策,同时也支持组合身份验证分法,用户可以通过本地Socket,进行无密码身份验证。而且作为回应用户的反馈,现在MariaDB 10.4现在能保证长字段或是字段组合的唯一性限制。