做透一个点:取代自建数据库
取代自建数据库,说起来好像很简单。但是如果列出取代自建数据库需要考虑的五个价值点:
a.可靠性
b.稳定性
c.高性能
d.零维护
e.性价比
并逐个剖析,你会发现要将这些点做好,并非易事。 UDB 产品经过几年的努力,完美地实现了 做透一个点:取代自建数据库 这一目标。
可靠性
云数据库的可靠性强调数据安全性包括两方面:一是 DB 数据;二是备份数据。DB 数据落盘的持久性通常要求 99.9999%及以上,表明数据保持存储状态不丢失的概率。此类数据主要是指用户存储在数据库中的数据,不包括缓存和临时存储。DB 数据本地盘采用 RAID10 或者 RAID50 做好冗余,若是高可用机型,则再有实例级冗余。备份数据要求异地存储,多副本存储。
稳定性
这里强调的是单机稳定性。我们可以看下如何自建一套数据库,在数据中心的电力、物理网络、机架、物理服务器等基础设施之上,部署操作系统和补丁,安装数据库软件和补丁,运行数据库软件,启用数据库服务。如果是采用虚拟化部署,则额外涉及计算、网络、存储虚拟化。这是一套庞大的系统,各个环节都存在不可预知的故障风险。 UDB 经过多年的运营积累了诸多经验,在多方面多层次保障其足够稳定。
高性能
如何通过软硬件结合使单机数据库的性能发挥到极致?高性能 UDB 机型底层采用 PCI-E/NVMe SSD 存储硬件,定制化宿主机 Linux 内核专门适配最新型硬件。采用自研 IO 调度算法,可良好保障实例级的 IO 隔离。数据库层面通过参数调优、内核定制优化,使数据库发挥出最优性能。通常情况下,数据库的性能瓶颈会出现在磁盘 IO 。采用虚拟机自建存在诸多弊端,例如 IO 路径过长、 IO 稳定性较差、 IO 竞争等。 UDB 采用高性能物理机+ Docker 架构 + 自研 IO 调度算法,打造出强劲的 IO 性能,持续保障稳定性和隔离性。
上图是去年某技术博客关于三大云数据库( UCloud 、阿里云、腾讯云)的评测数据。同样配置下, UCloud 云数据库的性能( Sysbench 测试)远超竞品数倍。这个评测在当时也引发了一场业界关于云数据库性能的大讨论和优化。
零维护
通常情况下,数据库是后台服务框架里最为核心的组件,重要性不言而喻,日常运维工作慎之又慎。在第一个阶段, UDB 提供的是数据库的全托管运维能力,包括一键部署、保活、容灾、备份、恢复、迁移、配置、漏洞修复、升级、监控与告警、巡检等等一系列的后台运维类操作,解放了客户的 DBA 人力/精力。本身在 UDB 产品上集成了上述多数的控制台操作,使客户对数据库基本可控。
性价比
客户对云数据库买不买账,性价比成为非常重要的因素。可靠、稳定、高性能、高可用、零维护等基础能力作为 UDB 的价值基础,在 UDB 产品上更是提供丰富的配置组合,自定义存储(普通盘 or SSD 盘)、内存大小、 VPC 网络、可用区等,灵活多配,按需付费,一键交付。按业务增长,弹性扩容。客户完全省去自建数据库的一切环节,规划 IDC ,规划资源、采购、上架、交付部署以及后期一切运维工作。对于一些商业数据库(如 SQL Server )尤其划算,省去自购官方 License 费用。
全景图
最后,给出第一阶段 UDB 的系统架构和产品全景图:
从下往上,可以看到一个云数据库产品的生长历程:
UCloud 全球数据中心是 UDB 开展所有工作的基础。截止 2017 年 7 月份, UCloud 目前已有 21 个数据中心,其中 9 个海外数据中心遍布三大洲 10 个国家和地区,均部署有 UDB 产品。
UDB 数据中心自动化管理系统以及 DBA 和数据库运维系统是支撑 UDB 产品现网运营的两大基础系统。 UDB 全球任何一个数据中心的数据库资源和现网运行问题,最终都落实到这两个系统和负责团队之上。而 UCloud 公司级支撑平台则包括但不限于:运营平台、运维平台、监控和告警平台、质量管理平台、发布和配置系统、变更系统、资产管理系统等,这些系统为 UDB 团队的日常运营提供强有力支撑。同时, UDB 充分借助了兄弟部门的云服务来简化 UDB 管理流程,优化管理质量,这些系统包括:对象存储 UFile 、分布式文件系统 UFS 、监控系统 UMonitor 等。
3.基于物理机的 Docker 虚拟化是 UDB 产品的硬件基础。物理机+ Docker 的硬件架构,其优点已在上面充分说明,在此不做赘述。
4.多品类的数据库产品。基于物理机的 Docker 结合 UCloud SDN 基础网络,各种数据库软件得以部署。目前 UDB 产品已经支持 MySQL、Percona、MariaDB、PG、MongDB、SQL Server 六大主流数据库。更多的数据库产品,还在不断扩充中。
小结
UDB 团队将推出一系列文章来介绍 UDB 产品的现有能力,并分享做产品的经验和对未来的思考。本文作为这个系列的第一篇,以全景概览的方式为大家介绍了 UDB 产品的基因,三个发展阶段,并就第一个阶段(取代自建数据库)进行了详细论述。
在下一篇文章,我们将展开对 UDB 产品发展第二、三阶段的讨论。后续将进一步深入, 推出涵盖 UDB 高可用和容灾、读写分离、分布式数据库等具体功能点的技术、产品文章,敬请期待。
本文转载自公众号 UCloud 技术(ID:ucloud_tech)。
原文链接:
https://mp.weixin.qq.com/s/UOMWZYEVETiD0fmKcjTd4w
评论