数据库、操作系统、中间件并称为核心基础软件,在 IT 软件堆栈中起到中流砥柱的作用。今天运行的绝大多数企业应用软件都离不开数据库的支持。
随着移动互联网、物联网、云计算、大数据等新技术爆发式发展,图片、音频、视频等非结构化数据开始有了爆炸性增长,传统数据库已经不堪重负,企业客户急切需要新的 NoSQL 数据库技术与数据库产品。
在云计算技术不断成熟的背景之下,云数据库开始崛起。云数据库无需购买和安装任何软硬件,只需支付服务费用,因而减少了 DBA 的投入和成本;并因为其按需扩展、按需付费等特性,云数据库也获得了大量中小企业及互联网企业客户的拥护。
近日来,InfoQ 联合华为云邀请了来自各大互联网公司的 10+ 位 DBA,聚焦视频、游戏、车联网 / 物联网、金融、电信等场景,对华为云数据库 DDS 服务增强版(以下简称“华为云 DDS 增强版”)进行了详细测评。
华为云 DDS 增强版属于华为云多模 NoSQL 服务 GeminiDB 序列,是 GeminiDB 的核心产品之一。华为云多模 NoSQL 服务 GeminiDB 是基于 NoSQL 的市场机会以及客户的具体需求设计而成,在公有云环境里设置计算与存储分离的架构,力图从根本上解决存储和计算设备的生命周期不匹配问题、数据迁移的成本问题和可用性问题,站在全局角度,对软硬件进行设计和整合,最终实现极致性价比。
在历时一个月的测评时间里,InfoQ 对这 10+位 DBA 的测评结果进行了整理。
整理结果如下:
其中,云和恩墨首席架构师盖国强(业界人称“盖神”)在测评华为云 DDS增强版后的反馈如下:
-
产品功能满意度
整个测评过程非常流畅,未出现和遇到任何错误,功能设计得当,提示信息明确,核心功能(例如实例创建、资源变更、备份恢复、运行监控)健全,尤其是备份功能,该功能设计的初始备份和自动备份让人印象深刻,毕竟数据备份是数据管理的第一要义。
-
用户体验满意度
产品的交互设计清晰,提示信息明确,易于上手体验使用。
测评截图
-
备份恢复
能够顺利完成备份和恢复任务,功能清晰,执行简单,调度任务修改流畅,能够充分保障用户的数据安全。但是如能对备份存储的可用性、安全性进行直观地表示和说明,会更增加用户的安全感;如果备份是异地、跨安全域的,也能为用户提供更好的心理安全感受。
-
参数组使用方式
对参数的区间和含义做了配置和说明,如果能够提供多个参考参数组,以适应不同场景则更佳,或者针对主要参数,提供知识库链接,针对不同参数的配置给予更多的讲解阐释会更好。
-
可维护性
备份任务的定义、监控告警的定制,都可以方便地定制和使用。系统的存储和配置扩容流畅平滑,易用性高。
小编总结:
总的来说,“盖神”对华为云 DDS 增强版给予了很高的评价。不止“盖神”,其余各大互联网公司的 DBA 也在测评后表达了对华为云 DDS 增强版的认可:
-
金融/电信行业高级DBA “金融街男神”(匿名) 在测评华为云DDS增强版后这样说:“存储空间可扩容,实例规格可变,数据库端口修改方便,公网、内网均可以连接。用户交互做得很好,功能指引很清晰,实例运行架构图做得简洁明了。备份恢复功能为误删提供了保障,还可以设置备份周期,很方便周到。”
-
车联网领域DBA “飞驰的小马达” (匿名)在测评华为云DDS增强版后这样说:"在我们行业里,货物运输情况记录会使用NoSQL数据库,我们对可靠性要求较高。华为云DDS增强版可以按需弹性伸缩,自动备份数据,绝无数据丢失的担忧。通过多节点并行的快照备份,备份恢复性能提升,分钟级完成集群的扩缩容,非常方便。”
-
国内知名视频平台DBA专家“ 看剧狂人”(匿名) 在测评华为云DDS增强版后这样说:“华为云文档数据库DDS读性能优于写性能(吞吐量和稳定性方面);华为云文档数据库DDS在双节点上的针对中小数据量的读写与大数据量的读写相比,以大于8线程为最优。”
究竟这款文档型数据库有哪些“独特之处”,让各位 DBA 纷纷点赞?
我们一起来了解一下华为云文档型数据库 DDS。
什么是 DDS?
文档数据库服务(Document Database Service,简称 DDS)完全兼容MongoDB 协议,提供安全、高可用、高可靠、弹性伸缩和易用的数据库服务,同时提供一键部署、弹性扩容、容灾、备份、恢复、监控和告警等功能。
DDS具有以下基本特点
-
自动搭建兼容 MongoDB 协议的文档数据库实例供用户使用,提供一键式部署、数据高可靠存储、容灾以及故障切换等功能。
-
提供基于 shard、mongos、config 组成的分片集群实例,轻松扩展读写性能,用户可以方便快捷地构建 DDS 分布式数据库系统。
-
提供一键式的数据库备份、恢复功能。用户可以通过管理控制台进行数据库常规备份及恢复。
-
提供多项性能监控指标及告警功能,数据库性能可视化管理。
2018 年 7 月,华为云发布自研文档型数据库 DDS 增强版。今年 2 月,华为云DDS 增强版正式商用。作为华为云在数据库产品矩阵上的重要布局,DDS 增强版不但兼容最流行的 NoSQL 数据库 MongoDB,而且基于华为自研核心技术——存储计算分离架构,在读写性能、扩容能力、备份恢复性能、故障容忍能力等方面全面提升。
相较于 DDS 社区版,华为云 DDS 增强版架构演进变化如下图所示。
DDS 社区版集群架构
华为云 DDS 增强版集群架构
华为云 DDS 增强版有哪些特点?
作为国内首家基于计算存储分离架构的CloudNative的NoSQL数据库,华为云DDS增强版有哪些特点?
内核优化 + 自研,高性价比,极致性能
华为云 DDS 增强版采用内核优化 + 自研,是国内首家通过优化内核、全自研架构,为用户带来超高的性能与最优的用户体验的云端数据库服务,其在各方面的表现十分亮眼:
-
在 Gartner2018 年数据库系列报告中,在自动数据分配、高速数据获取和事务处理方面获得最高分;
-
兼容业界主流开源接口;
-
性价比最优的文档数据库服务,支持非结构化数据存储场景。
具体来说,华为云 DDS 增强版将 MongoDB 的多副本复制功能卸载到分布式存储,使得 Secondary 节点也可以为读写服务,相同成本下获得 3 倍的计算能力,进而获得 3 倍的读写性能提升:
-
将 MongoDB 数据库节点无状态化,将数据和计算节点分离,去掉数据强归宿某个计算节点的限制,使得横向弹性伸缩性能提升 100 倍以上;
-
打破 MongoDB 只在单个 Shard 副本集内支持 HA 高可用的限制,集群内所有 Shard 的所有节点都互为 HA 备份关系,使得可以支持任意 N-1 个节点故障;
-
打破 MongoDB 只在单个 Shard 副本集内节点间复制 3 副本的限制,分布式存储采用分片复制能力,磁盘故障后可以由更多磁盘参与数据重构,10倍缩短数据时间;
-
使用分布式存储的快照备份技术,替代 MongoDB 的逻辑备份,10 倍提升备份恢复性能。
众所周知,游戏行业的数据库应用面临诸多痛点:
-
资源的弹性伸缩,需要停服手工操作,不但需要停服,而且风险极高;
-
没有数据库的故障自动切换机制或能力不足,主实例故障,修改应用配置,停服时间长;
-
很少设置专职 DBA 岗位,遇见数据库回档场景,很难满足运营的诉求。
具体来说,游戏行业需要存储大量用户信息、装备、积分等海量数据,并直接以内嵌文档形式存储,从而方便数据查询和更新。对于游戏数据库而言,既需要存储庞大的数据量,又要保证高效的读写速度。同时在开发过程中,面对复杂的游戏数据结构,要能够快速搭建数据结构,NoSQL 数据库非常适用于游戏项目的开发。
华为云 DDS 增强版的上述特性,很好地契合了游戏行业场景的需求。在这次评测体验中,游戏行业 DBA 测评华为云 DDS 增强版后反馈是:
华为云文档数据库提供的技术已经足够满足大部分项目的需求,可以快捷高效地创建、备份、恢复以及删除;并且还提供了方便的可视化界面,释放 DBA 的双手。对于即时交互性要求非常高的游戏,如王者荣耀等,游戏卡顿、延迟永远是致命的问题。跨可用区部署,可以有效地降低游戏延迟,提高游戏流畅度,优化用户体验。同时还能实现一定的容灾功能,华为云 DDS 增强版是精品游戏不可或缺的功能。
DDS 性能测试结果(By 游戏行业 DBA 测评截图)
高可靠性
以视频行业为例,视频分类等应用都有视频不同维度搜索(比如相关、最新和最热)的业务需求。相比于社区版,华为云 DDS 增强版不仅能完全兼容MongoDB 协议,使用户在视频、电影、综艺等节目的 EPG 信息、演职员信息、多码率视频信息、节点信息、转码文件索引、转码视频播放 HLS 流地址、二维空间索引等方面,无需针对社区版语法做任何修改即可直接使用华为云 DDS 增强版。而且在成本方面,不需要每个分片都做 Primary、Secondary 和Hidden 的三副本数据冗余,省去 2 倍的存储投入,即可达到超高可靠性。
-
高可用架构
华为云 DDS 增强版,基于业界领先的计算存储分离架构,多个分片节点共享一个 DFVPool 的数据域,实现分片间数据零时延,在分片故障的情况下,由其他分片无缝接管请求的读写。
视频行业 DBA 测评截图
副本集模式下,主节点和备节点提供服务。当主节点出现故障时,系统自动选取新的主节点,当备节点不可用时,隐藏节点接管服务,保证高可用。
-
多副本冗余
通过自研 DFVPool 存储池,实现数据多副本冗余,将 block 随机写入多台不同的存储主机上,保证(N/2-1)台存储故障时不丢失数据,而且对业务无感知,通过自诊断的方式快速补充冗余数据。
视频行业 DBA 测评节点信息截图
数据备份包括自动和手动两种方式。自动备份为系统自动创建的数据库实例的全量备份,手动备份是由启动的数据库实例的全量备份,且备份成功后均支持一键式恢复。
备份数据存储至对象存储服务在提高数据容灾能力的同时有效降低磁盘空间占用。创建实默认开启自动备份策略,实例创建成功后,将自动执行一次全量备份,该备份文件默认保留 7 天,创建成功后可以设置自动备份的周期,修改备份策略。可以根据自身业务特点随时发起备份,手动备份会一直保存,直到我们自己手动删除。
可以将已有的备份数据恢复到新实例,恢复后的数据与该备份生成时的实例数据一致。
视频行业 DBA 在测评华为云 DDS 增强版后给出反馈:在高可靠性方面,华为云 DDS 增强版提供的技术服务非常完善和齐全,包括集群的搭建、部署和一些可视化的界面都比较方便地搭建一个高可用、分布式的 DB 集群同时进行管理。在跨可用区部署上,华为云提供的支持还是比较完善的。实时的监控可以预防 DB 事故的发生;事故发生时可以通过可视化的界面及时解决;事故发生后可以依赖完善的容灾备份系统进行恢复。
视频行业 DBA 备份和恢复操作截图
性价比最优,支持非结构化数据存储场景
物联网智能终端往往需要进行多样化的数据采集,且需要存储设备日志信息,并对这些信息进行多维度分析;且物联网业务增长快,数据量大,访问量增长迅速。车联网符合并发量大,数据上传频率高,写多读少的高吞吐型业务场景,对查询要求也接近准实时;原有的关系数据库已经不能满足业务需要,尤其数亿量级下的分页查询和车辆历史轨迹查询的场景下,关系数据库的读取相应延迟已经达到了数分钟级,完全不能满足客户的需要。
华为云 DDS 增强版兼容 MongoDB 接口,用于存储所有接入的智能设备信息,以及设备汇报的日志信息;DDS 可实现近 100TB 数据存储,满足国家要求存储 1~2 年的车辆数据,且根据用户需求,在 2019 年将实现更大规模数据存储;DDS 在灾备 / 迁移上,在 Q1 月份支持全量迁移;在 Q2 月份支持跨 AZ;在Q3 月份支持跨 region。综合来看,华为云 DDS 增强版是性价比最优的文档数据库服务,且支持非结构化数据存储场景,给 DBA 带来了极大的便利。
写在最后
与测评的 DBA 沟通时,很多人用了“辛酸”二字,DBA 主要工作在后台,很少听到客户的夸奖,但当出现问题时,经常被指责。DBA 的工作时间非常不规律,许多 DBA 管理的更改需要中断,但是大多数数据库在营业时间内都处于活动状态,这意味着更改的时间只能安排在夜晚和周末期间。即使每天都使用数据库,中断通常也不会发生在高峰期,通常在周末的几个小时内。虽然 DBA 不属于开发、支持、基础架构、网络等 IT 团队中的任何一个,但对其他技术都要了解。
云时代,数据库上云已成 DBA 共识,便捷性、高性价比、极致性能都是 DBA 选择云数据库服务的关键指标。一直以来,华为坚持以客户为中心,无论产品设计与服务提供,都致力于为客户提供最优性价比的服务与体验,华为云 DDS 增强版就是一款真正懂 DBA 的文档数据库服务,为 DBA 扫除数据库上云障碍,助力其开创云时代职业生涯发展的新篇章。
基于华为公司 30 年的技术积累,厚积薄发的华为云数据库服务在发展的道路上始终坚持技术创新,此次通过对华为云数据库 DDS 增强版的体验评测,极致性能与超高的用户体验惊艳了参与体验的 DBA,也让开发者们对华为云数据库的未来产品与服务充满期待。
来源: InfoQ 作者:关贺宇