PolarDB支持自动高可用模式、手动高可用模式、自定义高可用模式。自动高可用模式下,PolarDB通过对数据库内核、容器、主机等多维度状态检测,减少故障检测时间,降低故障误判概率,单点故障场景下RTO<30s。手动高可用模式下,PolarDB检测机制、状态汇报机制正常工作,由用户决定是否执行高可用操作。自定义模式下,用户可设置指定场景下执行对应的高可用操作。

智能读写分离

PolarDB自带智能数据库代理,提供透明读写分离,连接池等高级功能。

一致性级别

PolarDB智能代理,提供透明的读写分离功能,以及提供完备的一致性级别,满足用户不同的场景需求。
  • 最终一致性:忽略只读节点的复制延迟,最大的利用只读节点的读能力,提供最好的性能。
  • 会话一致性:解决只读复制延迟带来的同一session写后可能读不到数据的问题,满足绝大多业务的需求。
  • 全局一致性:该级别为最高级别,解决不同session间读写的依赖关系。

连接池

PolarDB智能代理提供两种连接池选项:
  • session级连接池,提供对业务完全透明的连接池功能,用于减少短连接业务(比如PHP),频繁建立新连接带来的Mysql负载高及短连接性能问题,使得DB能够更多的处理用户的实际业务请求。
  • transaction级连接池,解决大量连接带来的DB连接数限制及线程间频繁切换的开销,特别适用于serverless的应用。

事务拆分

提供RC级别下的事务拆分功能,将事务内更新请求前的读请求尽量路由到只读节点,减少主库的压力,该功能特别适用于某些ORM框架默认将所有请求封装到事务里的场景。