三个国产数据库调研:达梦,PolarDB,TDSQL
1. 整体描述
目前很多国企都开始推行国产化,包括操作系统,硬件,当然也包括数据库,最近针对目前几个国产数据,对接入和使用兼容等方面的开发成本进行调研。
2. 达梦数据库
最近几年比较火的国产数据库,总部在武汉,这个也是很多甲方要求用的数据库,文档和工具比较齐全,但是费用比较高。
2.1 相关网站
工具下载:
达梦官方文档:
2.2 接入工作
达梦的SQL虽然和MYSQL比较接近,但是具体看还是有区别的,在见表语句,增删改查等很多地方,都需要对达梦的数据库进行单独处理。
具体在spring框架下的接入,网上也有很多教程,我就不展开说了,大概就是先添加pom依赖,然后在yam配置文件里配置一下,数据库层要用mybatis-plus,支持达梦数据库,其他还有些细微的调整。
2.3 工具使用
达梦数据库不能通过MYSQL原有的Navicat工具进行接入,达梦数据库官方提供了比较详细和全面的工具,使用起来需要适应,或者用DBeaver,下载一个达梦的驱动,也是可以连接的。
数据库从MYSQL迁移到达梦,也是提供了工具实现,迁移工作还是比较顺滑的。
2.4 总结
达梦数据库最近几年国产数据库里算是相当不错的了,文档和工具非常齐全,就是SQL语法和之前的MYSQL有些区别,要想使用的话,学习成本肯定是要有一些的,一些概念和传统的MYSQL也不一样。
3. PolarDB数据库
PolarDB是阿里推出的一个国产数据库,支持阿里云生态和私有化部署,有社区版。
3.1 相关网站
官方网站:
官方社区:
3.2 产品对比
PolarDB分为三个产品:PolarDB MySQL 版,PolarDB PostgreSQL 版和PolarDB 分布式版。具体差别如下:
PolarDB MYSQLPoLarDB PostgreSQLPolarDB 分布式数据库生态MySQLPostgreSQL、OracleMySQL产品架构Share storage,计算存储分离Share storage,计算存储分离Share nothing,分布式输出形态公共云、专有云企业版公共云、专有云企业版、DBStack公共云、专有云企业版、DBStack开源版本无无有
3.3 接入工作
根据产品对比,需要的是支持MySQL和提供开源的版本,只能使用PolarDB分布式的版本,即PolarDBX版本。官方提供了PolarDBX的镜像,创建容器进行接入,驱动可以直接使用MySQL的驱动,代码基本不用调整,导入,迁移和后期开发运维成本比较低。
4. TDSQL数据库
TDSQL是腾讯推出的一个国产数据库,用于腾讯云服务,没有找到可以单机私有化部署的版本。
4.1 相关网站
4.2 产品对比
TDSQL MySQLTDSQL PostgreSQL数据库生态MySQL 5.6,MySQL 5.7, MySQL 8.0,MariaDB 10.1PostgreSQL 10产品架构基于 TXSQL 企业级内核优化之上支持自动水平拆分、Shared Nothing 架构的分布式数据库,当前已经兼容 MySQL 的各个版本针对 PostgreSQL 10 进行了深度的内核优化.在完整支持 PostgreSQL 10的优秀特性基础之上,完善了分布式事务能力,提升了分布式事务性能。并提供了审计,加密,三权分立等多项企业级安全特性开源版本无无
4.3 接入工作
在线使用TDSQL MYSQL版本,验证基本兼容,驱动可以直接使用MySQL的驱动,代码基本不用调整,导入和迁移成本较低。
5. 对比总结
5.1 产品对比
对比目前调研的三个国产数据库:
达梦官方文档和工具比较齐全,但是由于不是100%兼容MYSQL语法,并且其本身很多概念和语法属于原创的,迁移和后期使用成本较高;
PolarDB数据库,使用PolarDB Mysql的分布式版本,基本兼容MYSQL,支持docker部署,迁移成本较低;
TDSQL数据库,基本兼容MYSQL,迁移成本较低,但是都是云端部署,没找到离线单点部署的方式。
达梦数据库PoLarDBXTDSQLMYSQL兼容性一般较好较好迁移成本较高较低较低开发成本较高较低较低私有化部署有有无
5.2 调研结论
如果想要私有化部署,TDSQL目前没有可以私有化部署的方式,云端部署建议优先选择PolarDB和TDSQL,私有化部署可以选择达梦和PolarDBX,具体还有根据实际情况和甲方要求选择。
版权归原作者 天河归来 所有, 如有侵权,请联系我们删除。