前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >MongoDB 第三期:托管 MongoDB 存储服务

MongoDB 第三期:托管 MongoDB 存储服务

原创
作者头像
迪B哥
修改2017-08-16 14:48:34
1.7K0
修改2017-08-16 14:48:34
举报
文章被收录于专栏:MySQL实战分享MySQL实战分享

一、业务概述

1、简介

MongoDB是一个开源的、基于分布式的、面向文档存储的非关系型数据库。是非关系型数据库当中功能最丰富、最像关系数据库的。MongoDB由C++编写, MongoDB可以运行在Windows、unix、OSX、Solaris系统上,支持32位和64位应用,提供多种编程语言的驱动程序。旨在为WEB应用提供可扩展的高性能数据存储解决方案。MongoDB高性能、易部署、易使用,存储数据非常方便。MongoDB最大的特点是支持的查询语言非常强大,其语法有点类似于面向对象的查询语言,几乎可以实现类似关系数据库单表查询的绝大部分功能,而且还支持对数据建立索引。

2、架构

托管平台提供的MongoDB存储架构是三节点副本集的高可用架构,三个数据节点位于不同的物理服务器上,自动同步数据。Primary节点提供服务(一般情况),当Primary节点出现故障,系统自动从两个Secondary中选举新的Primary节点。特殊情况下,可开放一个Secondary节点提供读写分离的服务。

MongoDB复制集由一组Mongod实例(进程)组成,包含一个Primary节点和多个Secondary节点,MongoDB Driver(客户端)的所有数据都写入Primary,Secondary从Primary同步写入的数据,以保持复制集内所有成员存储相同的数据集,提供数据的高可用。

下图是一个托管平台提供的MongoDB复制集,包含1个Primary节点和2个Secondary节点。

二、业务特性

1、 高性能

【高并发读写】

MongoDB支持多线程,可充分利多核CPU的优势,有效的提高其读写性能。在千万级数据中,简单读操作的QPS的可达到15万/秒;简单写操作的QPS可达到5万/秒。在亿级数据中,简单读操作的QPS也能达到10万/秒。

【超强的压缩性】

托管平台提供的MongoDB服务,采用MongoDB-3.2版本(持续升级),采用Wired Tiger存储引擎,对于简单结构数据可达到65%左右的压缩,对于较复杂结构的数据压缩率也在50%左右,极大了减小了存储空间,降低了使用成本。

2、 高可用性

【容错性】

三副本架构拥有较高了容错能力,当Primary节点出现故障,系统自动从两个Secondary中选举新的Primary节点,业务完全无感知。与此同时利用另一个Secondary节点进行快恢复,可将替换节点恢复至最新状态。避免从冷备数据中恢复而导致的数据不一致问题。

【自动同步机制】

MongoDB副本集数据同步主要包含2个步骤:intial sync(全量同步)和replication(追同步源的oplog,即增量同步),保证了数据的主从副本间的一致性,为故障转移和读写分离提供了基础保障。

【隔离机制】

有效的控制业务对机器资源的使用,使得就算是多个实例混跑,也不会造成相互影响的恶性循坏,每个业务都能独占分配的资源。

3、 高可靠性

【完善的监控体系】

提供CPU利用率、内存使用率、主从状态、连接数、磁盘空间等实例信息实时监控和历史趋势统计信息,并且通过可视化图标的形式展示,便于开发和运维随时了解实例动态、定位故障以及根据业务发展趋势预先提供技术保障。

【自动备份和快恢复】

采用每天全量冷备、实时oplog备份、应急Secondary备份。有效防范因误操作等原因对业务数据造成不可逆的影响,提高容灾能力。

【专业的管理平台】

托管平台提供的MongoDB服务,采用专业的管理控制台。从业务的申请接入,到业务的日常维护(问题定位、实例重启、备份、数据恢复),以及业务的扩展,都提供专业的全面的、自助的、可控的管理平台。全面提升研发、运维效率。

业务申请地址: http://bianque.webdev.com/index.php?s=/home/index/mongoApply

4、 可扩展性

【支持弹性扩容】

MongoDB可以按需扩容,扩容过程方便快捷,不涉及物理机的迁移等重操作,出色平行扩容能力,也提高了资源的利用率。

【升级过程对用户透明】

定期对MongoDB的版本进行升级,使业务能第一时间享受到新特性带来的性能优化,同时升级过程对业务完全透明和无感,依赖较少,不影响业务的正常使用。

三、 应用场景

MongoDB存储服务具有其自身的特性和优势,在以下需求的业务场景中,使用该存储服务,能起到较好的效果:

  • 海量数据的存储
  • 高并发读写需求
  • 异构数据混合存储
  • 严格的读写分离需求

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、业务概述
    • 1、简介
      • 2、架构
      • 二、业务特性
        • 1、 高性能
          • 2、 高可用性
            • 3、 高可靠性
              • 4、 可扩展性
              • 三、 应用场景
              相关产品与服务
              数据库
              云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
              领券
              问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档