MongoDB学习(一)

MongoDB学习(一)

​ MongoDB是目前非常流行的nosql,尤其是在MongoDB4.0以后支持了事务操作,让MongoDB适应了更多的场景。目前我们在使用MongDB时,都会采用集群部署,主从结构(一主多从)。

MongoDB集群

MongoDB数据同步原理

​ MongoDB主节点接受所有的写请求,在发生新增,修改,删除操作时会向oplog中写入日志,MongoDB会有一个线程一直监听oplog这个集合,当监听到oplog变动时,就会读取日志,并将日志回放,以此来实现主从同步。

MongoDB高可用

​ MongoDB采用主从模式,当主节点宕机后,从节点会重新发起投票,选出新的主节点,从而保证集群的高可用性。每个节点和每个节点之间都有一个互相的心跳,每两秒会发送一次心跳,如果连续5次没有响应则认为该节点失联,如果失联的是主节点,则会发起投票(如何认为主节点宕机)。MongoDB的投票算法采用Rasft算法。MongDB从节点最多可以有50个,但是拥有选举权的则最多有7个。

​ 从节点当选主节点的条件:

  1. 能够和大多数节点连接

  2. openlog的数据要比别的节点都新或者相同

  3. 手动给节点设置优先级

    首先要满足1,2条件,3条件是人为的,可以不设定。

MongoDB从节点参数

​ 搭建MongoDB集群,可以给从节点设置一些参数,比如上文提到的选举时的优先级,在这里罗列四个常见参数

  1. 是否拥有选举权,最多可以设置7个拥有选举权的从节点
  2. 选举时的优先级,值越高则越越优先成为主节点,0无法成为主节点
  3. 隐藏,会复制数据但是对应用不可见。他也可以拥有选举权但是优先级必须为0
  4. 同步延迟,可以设定该节点保持与主节点的时间差。如果出现数据错误等问题,可以使用该节点数据,降低影响。

MongoDB的集群类型

副本集群

建议为一主两从

分片集群

从数据库层实现了分库分表。使用分片集群要注意在部署mongos,configserver和shard必须在不同的机器上面。尤其是configServer,机器必须要稳定。其次就是片键的选择,要根据适合的场景选择片键

  1. hash片键

    数据分布均匀但是范围查询性能很差

  2. range片键

    可能会有热点数据产生成

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
信息数据从传统到当代,是一直在变革当中,突如其来的互联网让传统的信息管理看到了革命性的曙光,因为传统信息管理从时效性,还是安全性,还是可操作性等各个方面来讲,遇到了互联网时代才发现能补上自古以来的短板,有效的提升管理的效率和业务水平。传统的管理模式,时间越久管理的内容越多,也需要更多的人来对数据进行整理,并且数据的汇总查询方面效率也是极其的低下,并且数据安全方面永远不保证安全性能。结合数据内容管理的种种缺点,在互联网时代都可以得到有效的补充。结合先进的互联网技术,开发符合需求的软件,让数据内容管理不管是从录入的及时性,查看的及时性还是汇总分析的及时性,都能让正确率达到最高,管理更加的科学和便捷。本次开发的医院后台管理系统实现了病房管理、病例管理、处方管理、字典管理、公告信息管理、患者管理、药品管理、医生管理、预约医生管理、住院管理、管理员管理等功能。系统用到了关系型数据库中王者MySql作为系统的数据库,有效的对数据进行安全的存储,有效的备份,对数据可靠性方面得到了保证。并且程序也具备程序需求的所有功能,使得操作性还是安全性都大大提高,让医院后台管理系统更能从理念走到现实,确确实实的让人们提升信息处理效率。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值