华为针对MySQL的数据库有2个,一时间傻傻分不清楚应该选择那个?
华为关系型数据库和非关系型数据库均可分为开源和自研两大类。其中,自研数据库统一为GaussDB系列,开源数据库则为RDS版。
一、关系型数据库RDS:开源版本的云上优化
RDS(Relational Database Service,关系型数据库服务)是一种基于云计算平台的即开即用、稳定可靠、弹性伸缩、便捷管理的在线关系型数据库服务。
目前华为云提供的RDS服务包括:RDS for MySQL、RDS for PostgreSQL,分别是基于MySQL、PostgreSQL开源数据库做了云上的优化。
华为云RDS的最小管理单元是实例,一个实例代表了一个独立运行的关系型数据库,实例可进行如下分类:主实例、备实例、只读副本,用户可以在RDS系统中自助创建及管理各种数据库引擎的实例。
我们如果想建立一个基于数据库的企业软件应用,传统的做法是自建数据库,当然我们也可以选择在云服务器ECS上搭建数据库(云服务里的I层服务)、购买云数据库RDS(云服务里的S层服务)。
传统的自建数据库易用性较差,需要大量的人力维护,而且一旦遇到数据丢失情况,损失不可估量。
二、自研云原生数据库GaussDB
最近,华为云推出了GaussDB全场景数据库云服务来满足客户在不同应用场景的数据库需求。
华为GaussDB系列,基于在外部电信与政企市场、华为内部IT与云底座深耕十几年的数据库内核研发优化能力、对客户高可靠高性能诉求的理解,结合云的技术倾力打造的企业级分布式数据库。
关系型数据库方面,华为云今年7月正式发布上线了云原生GaussDB(for MySQL)数据库,拥抱和兼容广泛认知的开源生态MySQL。同时,基于华为开放生态的openGauss内核打造的分布式数据库GaussDB(openGauss)也会在年内正式商用发布。
在非关系型数据库服务领域,华为云重点打造云原生GaussDB NoSQL多模数据库系列,包括GaussDB(for Mongo)、GaussDB (for Redis)、GaussDB (for Influx)、GaussDB(for Cassandra)。目前,GaussDB(for Mongo)、GaussDB(for Cassandra)已正式商用。
华为云自研数据库GaussDB系列有如下核心技术优势:存算分离架构,DFV存储、NDP算子下推等等。
以GaussDB(for MySQL)为例,它基于华为最新一代DFV分布式存储,采用计算存储分离架构,支持1写15读的只读节点的极速扩展,最高支持128TB的海量存储,可实现超百万级QPS吞吐,单节点相比原生MySQL性能提升7倍,业界第一。
再如,GaussDB NoSQL系列拥有极强的多模数据管理能力,在并发读写能力、扩容时间缩、故障重构时间、备份效率、恢复效率等方面也都实现了业界领先,相比纯开源软件能力有了质的飞跃。
华为云GaussDB系列全场景云服务不仅提供了丰富的数据库产品组合,还可根据不同客户的业务应用特点进行“量体裁衣”。
比如GaussDB(for MySQL)、GaussDB(for Mongo)等服务将聚焦最基础的云原生开发对云数据库的要求,并提供极致性价比的解决方案。
三、总结
综上,华为云数据库的产品大体可以归为三大类:
1)、华为RDS for MySQL、RDS for PostgreSQL服务、DDS文档数据库服务(文档类型Mongo),都是基于开源打造的数据库服务,聚焦最基础的云原生的开发对云数据库的要求,让客户迁移到华为云更加容易。都是基于开源打造的数据库服务,主要面向数据规模较小,性能要求一般的业务场景,提供极致性价比的解决方案。
2)、华为GaussDB系列,立足创新与自研,基于同一架构,一方面拥抱并兼容MySQL等生态,另一方面打造自己的openGauss生态,主要面向政企客户,强调高性能、高可靠、高安全等方面诉求。
表1:GaussDB(for MySQL)与RDS for MySQL的差异
类别 | RDS for MySQL | GaussDB(for MySQL) |
---|---|---|
架构 | 传统主备架构,主备通过binlog同步数据。 | 存算分离架构,计算节点共享一份数据,无需通过binlog同步数据。 |
性能 | 十万级QPS,高并发场景下性能提升3倍。 | 百万级QPS,性能是开源MySQL的7倍;复杂查询场景,支持将提取列、条件过滤、聚合运算等操作向下推给存储层处理,性能相比传统架构提升数十倍。 |
扩展性 | 1. 最多添加5个只读节点,添加只读所需时间与数据量大小相关,并且需要增加一份存储。2. 存储自动扩容,最大支持4TB。 | 1. 最多添加15只读,由于共享存储,添加只读节点所需时间与数据量大小无关,且无需增加一份存储。2. 存储自动扩容,最大支持128TB。 |
可用性 | 故障自动倒换,RTO通常小于30秒。 | 主节点和只读节点无需通过binlog进行数据同步,延时更低,故障自动切换,RTO通常小于10秒。 |
备份恢复 | 通过全量备份+binlog回放实现任意时间点回滚。 | 通过全量备份(快照)+redo回放实现任意时间点回滚,备份恢复速度更快。 |
数据库版本 | MySQL 5.6、5.7和8.0。 | MySQL 8.0。 |