在 MySQL ShardingSphere-Proxy 逐渐成熟并被广泛采用的同时,ShardingSphere 团队也在 PostgreSQL ShardingSphere-Proxy 上持续发力。相比前期的 alpha 与 beta,5.0.0 正式版对 PostgreSQL 的协议实现、SQL 支持度、权限控制等方面进行了大量的完善,为后续全面对接 PostgreSQL 生态打下基础。ShardingSphere-Proxy 与 PostgreSQL 的生态对接,让用户能够在 PostgreSQL 数据库的基础上获得如数据分片、读写分离、影子库、数据加密/脱敏、分布式治理等透明化的增量能力。
除了 PostgreSQL 方面,由华为开源的国产数据库 openGauss 的热度持续攀升。openGauss 具备优秀的单机性能,配合 ShardingSphere 的能力和生态,能够打造出覆盖更多场景的国产分布式数据库解决方案。
ShardingSphere PostgreSQL/openGauss Proxy 目前能够支持数据分片、读写分离、影子库、数据加密/脱敏、分布式治理等 Apache ShardingSphere 生态中大部分能力,在完善程度上逐渐对齐 ShardingSphere MySQL Proxy。
本文将给大家介绍 ShardingSphere-Proxy 5.0.0 在 PostgreSQL 上所做的提升以及与 openGauss 的生态对接。
作者介绍
吴伟杰
Apache ShardingSphere Committer,SphereEx 中间件工程师。目前专注于 Apache ShardingSphere 及其子项目 ElasticJob 的研发。
ShardingSphere-Proxy 介绍
ShardingSphere-Proxy 是 ShardingSphere 生态中的一个接入端,定位为对客户端透明的数据库代理。ShardingSphere Proxy 不局限于 Java,其实现了 MySQL、PostgreSQL 数据库协议,可以使用各种兼容 MySQL / PostgreSQL 协议的客户端连接并操作数据。
ShardingSphere-JDBC |
ShardingSphere-Proxy |
|
---|---|---|
数据库 |
任意 |
基于 MySQL / PostgreSQL 协议的数据库 |
连接消耗数 |
高 |
低 |
异构语言 |
支持 Java 等基于 JVM 语言 |
任意 |
性能 |
损耗低 |
损耗略高 |
无中心化 |
是 |
否 |
静态入口</ |