QCon北京「鸿蒙专场」火热来袭!即刻报名,与创新同行~ 了解详情
写点什么

云数据库 UDB 的三重境界(三)

  • 2019-11-13
  • 本文字数:2584 字

    阅读完需:约 8 分钟

云数据库UDB的三重境界(三)

构建功能网:全方位覆盖用户需求题

云数据库发展第一阶段的目标是把“取代自建数据库”这个价值点做透,创造出区别于传统方式的全新价值。在第二阶段则需紧扣用户使用数据库的痛点,有针对性地推出公有云解决方案,构成一张功能网,全方位覆盖用户需求。


我们把第二阶段用户的需求归结为三类:


  • 高可用和容灾


数据库的高可用,即数据库节点容灾机制。它通过节点冗余和主备切换,在部分节点出现异常的情况下保证数据库仍可正常提供服务。数据库的高可用是大型 IT 系统的必备机制,但不少系统在建设时,受限于自身基础设施和能力,无法实现优质可靠、高等级的数据库高可用。


而这一点恰好是公有云的优势。首先是基础设施完善。公有云厂商拥有大量的数据中心,数据中心之间通过跨可用区,乃至跨地域的光纤专线进行连通,构成一张覆盖全国乃至全球的高性能网络;第二,公有云的规模效应将带来成本优势,能够显著降低基础设施的建设成本;最后,规模效应也让技术团队被超大力度地锤炼,技术能力和运营水平不断提升。基于以上三点原因,公有云是实施数据库高可用的天然优质土壤。


因此,UCloud 基于自身基础设施来构建高可用数据库产品为用户提供易获取、低成本、高等级的数据库高可用能力,自然也是题中之意,是 UDB 团队必须做透的一个目标。


  • 容量和性能


近些年的一个明显趋势是全社会各行业的数据量在高速增长。原因之一是全社会生产和生活日益互联网化,由此造成用户使用 IT 产品的次数和频率有数量级的增长;原因之二在于企业对数据的价值越来越加以重视,普遍希望能够沉淀数据、分析数据、以及从数据中挖掘出价值。


数据库系统作为 IT 系统的发动机,必然随着大数据时代的到来遭遇新的挑战。用户使用 IT 产品频次的增加,必然在性能上对数据库系统构成挑战;而全社会数据量的大规模增长,必然在存储容量上为数据库系统带来挑战。如何应对这两大挑战,且总体保持 IT 成本可控,是令用户越来越头痛的问题。对于云数据库团队而言,也是创造全新用户价值的大好机会。


  • 运维和安全


运维和安全是云数据库研发和运营永远的课题。需要围绕用户需求构建运维闭环,从数据导入导出、数据库运行期管理/问题排查,到性能分析、数据库优化,让用户不使用任何第三方运维工具,即可将云数据库运维工作全部搞定。在安全上,除了 DBMS 自身的用户访问控制机制之外,还应该围绕审计、加密、防恶意攻击等方面为用户提供优质的产品或功能,构建数据库安全运营闭环。


下面将展开介绍 UDB 产品围绕高可用和容灾、容量和性能、运维和安全这三个方面,构建的众多功能点。这些功能点和功能点的组合构造出一张大网,全方位覆盖用户需求。

高可用和容灾


以上用一个表格概括介绍了 UDB 高可用各功能点。但不能概括的是表格背后 UDB 团队对高可用的潜心专研和精心打磨。总的来说,UDB 团队对高可用这个价值点的打磨包括以下几个方面:

MySQL 数据库内核深度优化

经过 MySQL 官方和社区多年的打磨,MySQL 软件在可靠性和性能上表现优秀,达到了工业级别的数据库管理系统要求,在各个行业都有大规模的应用。


但对于 UDB 团队来说,在线维护几万个 MySQL 实例的稳定运行,迫使我们对 MySQL 的可靠性、容灾能力和性能提出更高要求。为此,UDB 团队对 MySQL 数据库内核做了深度优化来进一步锤炼 MySQL 软件的品质。


这些优化包括:


1.改进半同步复制机制

2.解决复制的临界事务问题

3.提升主从复制的 IO 性能

4.消除复制机制中的文件锁竞争问题


限于篇幅不展开对内核优化的论述,更详细的内容请看详细介绍

全面的容灾能力


高可用 UDB 的总体架构图如上,在容灾能力的建设上需要考虑到两个层面。


a.MySQL 节点的容灾


利用成熟的代理软件 HAProxy 作为代理网关来转发 SQL 请求,主数据库节点出现异常时,由 HAProxy 将 SQL 请求切换到从节点。HAProxy 成熟的节点健康检查和切换机制能够及时有效地检查数据库节点异常,并进行切换。


b.HAProxy 节点的容灾


所谓高可用必须是系统内全部模块去单点,为此也需要考虑 HAProxy 的容灾。普通的做法是利用 KeepAlived 等节点健康监测和故障处理软件,来实现多 HAProxy 节点的部署和容灾。但在长期的工业生产环境中,人们发现 KeepAlived 存在误检测和脑裂等问题,这存在一定的稳定性隐患,不满足云平台容灾的需求。


为此,UDB 团队自研了针对 HAProxy 节点的健康检查和容灾系统,来充分保证高可用 UDB 的稳定性和容灾能力。HAProxy 健康检查和容灾系统采用多节点、跨可用区部署,节点之间通过分布式一致性算法进行选主,结合 UCloud SDN 的 VIP 漂移能力,能够在单可用区完全不可用的情况下实现 HAProxy VIP 的及时准确漂移确保 UDB 实例的高可用。

容量和性能


在上一篇文章提到去年某技术博客公布了国内三大云数据库产品的评测结果,UDB 性能超出竞品数倍。时隔一年后的一个偶然机会,UCloud 云数据库团队得到一份关于某云服务商数据库的性能测试报告,想要详细获取此份报告请点击这里 。根据这份报告,我们对比测试了 UCloud 分布式数据库 UDDB 的性能,以此来分析一年过后各云厂商在分布式数据库的性能差距。



从这个结果我们看到:以该份测试报告为基准,对比测试 UCloud 分布式数据库 UDDB,我们相对竞品,UDDB 依然保持 2-3 倍的性能优势。这也充分说明了物理机+Docker 架构的在性能上的强大优势,也体现 UDDB 中间件强劲的性能。


UDDB 测试环境如下:


运维和安全

UDB 全景图

经过一、二阶段的发展,UDB 产品已经成长为基础扎实、品类完善、功能全面的一个云数据库产品体系。结合上篇第一阶段的 UDB 产品全景图, 叠加 UDB 团队在第二阶段做的工作, 得到新阶段的全景图如下:



在第一阶段的基础上,UDB 产品围绕用户使用云数据库的痛点需求构建了三个方面的能力:

高可用能力

基于全球数据中心间的高速网络,结合数据库软件自身的数据复制机制,以及自研的容灾检测、处理能力,不同级别的数据库高可用能力得以构建。包括同机房高可用、跨机房高可用、跨地域高可用、两地三中心高可用以及跨机房跨地域从库。

容量和性能问题解决方案

提供读写分离、分布式数据库两大产品,有效解决用户在数据高速增长下遭遇的数据库性能和容量问题。同时 TokuDB 压缩存储引擎提供很好的压缩率,在不损失性能的同时为用户节省数倍成本。

运维和安全

在运维方面提供面向 DBA 的数据迁移工具 DTS,以及面向开发团队定位为开发人员身边的自动化 DBA 专家的 DBAMaster 产品。在安全上提供存储加密和数据库审计功能。


2019-11-13 18:52799

评论

发布
暂无评论
发现更多内容

🔥httpsok-v1.13.0支持nginx证书部署管理

物有本末

SSL证书 SSL域名 免费SSL证书 (SSL)/TLS

【ASeeker】Android 源码捞针,服务接口扫描神器

iofomo

android 源码 Framework

LeetCode题解:2042. 检查句子中的数字是否递增,直接遍历,JavaScript,详细注释

Lee Chen

涛思数据荣获北京市新技术新产品(服务)证书

TDengine

数据库 tdengine 时序数据库

软件测试学习笔记丨软件测试流程体系

测试人

软件测试

AI+供应链丨一图读懂用友BIP供应链智能场景

用友BIP

spss统计软件:IBM SPSS Statistics 27 win/mac 中文激活版

你的猪会飞吗

Mac软件下载站 苹果电脑软件下载

国企干部选拔合规| 数智化工具赋能国企优化干部选拔机制

用友BIP

LeetCode题解:62. 不同路径,动态规划(空间O(n)),JavaScript,详细注释

Lee Chen

斩获 CVPR NTIRE 冠亚军,小红书如何提升短视频与直播体验质量?

小红书技术REDtech

人工智能 算法 计算机视觉 音视频 CVPR

Koupleless 内核系列 | 一台机器内 Koupleless 模块数量的极限在哪里?

SOFAStack

开源 云原生 开发 架构治理 软件应用架构

记录一个因 MYSQL 服务端和JDBC驱动版本不一致导致 HMS 启动失败问题

明哥的IT随笔

直播预约丨《袋鼠云大数据实操指南》No.3:数据资产管理实操,如何有效进行数据治理

袋鼠云数栈

数据中台 数据治理 数据资产 数据湖治理中心 数据资产管理

数字疗法与心理健康应用的普及

心大陆多智能体

人工智能 AI 心理健康 数字心理

限时优惠| 性能测试进阶训练营重磅来袭

测吧(北京)科技有限公司

测试

华为造车究竟成没成功,这个责任谁来担?

IPD产品研发管理

华为 项目管理 产品设计 产品开发 造车

RN状态管理MobX使用

凌宇之蓝

React Native

httpsok-v1.13.0支持七牛云证书自动部署

物有本末

七牛云存储 SSL证书 七牛云 免费SSL证书

盘点下常见 HDFS JournalNode 异常的问题原因和修复方法

明哥的IT随笔

毫秒级响应!清科优能应用 TDengine 建设虚拟电厂运营管理平台

TDengine

数据库 涛思数据 tdengine 时序数据库

云数据库UDB的三重境界(三)_服务革新_UCloud技术_InfoQ精选文章