随着企业的发展,数据也随之在不断增长。这就对数据库系统提出了很高的要求:既要在性能上满足业务的需要,还要在存储容量上满足数据的日益增长。
作为文档数据库一哥,MongoDB 一直以来被开发者和企业所青睐,以具有强可扩展性和优秀的读写性能著称。但是,在长时间的使用过程中,MongoDB 扩容时性能欠缺的缺点逐渐显现出来,成为企业的一块心病。
2017年的 MongoDB 年终大会上,来自云之家的 DBA 分享了一段个人经历:在一次对存储有 150T 数据的 MongoDB 数据库扩容中,耗时接近一个月。
市场千变万化,历时一月的数据库扩容,不知中途是否赶上业务高峰期,但在眼下互联网业务盛行、机遇说来就来的当口,一月时间发生的变化,可能性太多。在各种小时级甚至分钟级概念层次不穷的今天,为什么 MongoDB 的扩容,会耗时那么久呢?
真相是什么?
究其原因,MongoDB 扩容之所以需要较长时间,与其采用三副本架构有很大关系。该数据库存储数据使用的本地文件系统,每一个 shard 节点之间的数据是相对独立的。当扩容时,需将已有节点的数据同步均衡;由于数据独立存在,所以要对数据进行网络拷贝。
也因此,MongoDB 扩容后的性能并不能立即得到提升,这在很大程度上限制了MongoDB 的使用场景范围。
你可能会提出一个问题,网络拷贝也不至于速度如此之慢吧?事实是,数据拷贝对节点资源消耗很大,出于对整体性能的考虑,MongoDB 限制了数据迁移的速度。
世界总是如此,任何事物都不完美,但办法总比问题多。因此要想从根本上解决 MongoDB 数据库数据迁移慢的问题,就需要从架构上做调整。
正本清源:从根本上解决问题
上面提到,MongoDB 各 shard 节点之间数据是相对独立的。那么,如果现在数据相对于计算节点来说并非私有,而是共享,节点扩容是否就可以省去数据迁移步骤,进而大大缩短扩容时间呢?
答案是肯定的。华为云 MongoDB 社区增强版正是这一假设的践行者。
华为云 MongoDB 社区增强版是华为云文档数据库 DDS 推出的 Cloud Native 文档数据库服务。完全兼容 MongoDB 协议,使用计算储存分离架构,在读写、扩容能力、备份恢复性能、故障容忍等方面对比 MongoDB 社区版有质的突破。
华为云 MongoDB 社区增强版打破现有架构约束,将 MongoDB 数据库节点无状态化,去掉数据强归属于某一计算节点的限制,将计算和存储相分离,数据可靠性交由底层共享存储系统来保证,从根本上解决了数据迁移慢的问题。
传统 MongoDB 架构 & 华为云 MongoDB 社区增强版架构
计算节点无状态化
由于计算和存储的分离,副本集不再需要,华为云 MongoDB 社区增强版将 Shard 副本集替换为单节点 Shard,单节点 Shard 在运行中并不保存和命令请求相关的信息,每次命令请求都和以前没有任何关系,命令执行完成,返回结果后,没有任何痕迹。这样以来,可以很方便的被替换掉(或集群、横向扩展)而不用状态重建(或同步)。
节点扩容
华为云 MongoDB 社区增强版在扩容时,将拉起一个新的单节点 Shard 添加到集群,由于数据是共享的,只需要在逻辑层面设置被接管数据的路径即可,新节点在指定的路径下加载完对应数据后,就能对外提供服务,整个过程可以在分钟级完成,同等条件下扩容性能提升了百倍以上,可以轻松应对业务突增带来的负载性能问题。
Cloud Native 文档数据库,极高性价比
华为云 MongoDB 社区增强版的架构升级,包括了计算(分片)、存储(分布式存储池)分离、每个计算节点(分片)互为主备关系、允许 N-1 个计算节点(分片)故障、集群高效平缓的横向扩展、更有利磁盘扩容的分布式存储池等特点,在同等成本下,数据库整体性能和可用性都得到大幅提升。
在该架构下,华为云 MongoDB 社区增强版相较社区版的弹性扩容能力提升了 100 倍故障重构能力和备份恢复性能提升10倍、读写性能提升 300%!
了解华为云 MongoDB 社区增强版更多信息,请移步官网:
https://activity.huaweicloud.com/dfv_mongo/index.html
HUAWEI CONNECT 2018作为华为自办的面向ICT产业的全球性年度旗舰大会,将于2018年10月10日-12日在上海隆重举行。届时将首发华为AI战略和全栈全场景的解决方案,并携手合作伙伴带来更多诸如AI、云、大数据、5G、IoT、视频等优势技术在各行业的创新与实践,惠及更多开发者人群,“+智能,见未来”,让我们拭目以待。
欲了解更多详情,请参阅:https://www.huawei.com/cn/press-events/events/huaweiconnect2018?ic_medium=hwdc&ic_source=corp_banner_allwayson&source=corp_banner
好文章,需要你的鼓励
BT 旗下宽带部门 Openreach 宣布在英国新增 163 个交换局停售传统铜线电话和宽带服务,覆盖超过 96 万户。此举旨在鼓励用户升级到全光纤网络的新型数字服务,是 Openreach 从 2025 年底到 2027 年 1 月将所有客户从公共电话交换网迁移的庞大计划的一部分。
Utelogy 与 Ascentae 达成合作,旨在通过整合服务提升 AV 和 UC 系统管理水平。基于 Microsoft Azure 平台,Utelogy 的软件可统一管理 AV 和 UC 设备,优化效率并提供数据洞察。此次合作将为客户带来创新的工作场所服务,增强协作能力和生产力。
DriveNets、富士通光组件和UfiSpace三家公司宣布完成多项测试和认证,将DriveNets Network Cloud软件与UfiSpace白盒设备结合。这一合作旨在为网络运营商提供显著的成本节省,通过将三层通信合并为单一平台,消除独立光学转发器的需求,从而减少硬件占用空间、运营开销和能耗。
Telstra International 提出了一个高度自主的网络框架愿景,旨在应对企业对云服务和人工智能日益增长的需求。该网络将具备自我管理、零接触操作、安全可靠等特性,预计到2030年实现全面升级。新网络将采用AI、机器学习等技术,大幅提升容量和灵活性,以满足未来客户需求。