zoukankan      html  css  js  c++  java
  • MongoDB面试题

    1. NoSQL与RDBMS直接有什么区别?为什么要使用和不使用NoSQL数据库?说一说NoSQL数据库的几个优点?

      NoSQL是非关系型数据库,NoSQL = Not Only SQL。

      关系型数据库采用的结构化的数据,NoSQL采用的是键值对的方式存储数据。

      在处理非结构化/半结构化的大数据时,在水平方向上进行扩展时,随时应对动态增加的数据项时可以优先考虑使用NoSQL数据库。

    2. MongoDB的复制集是什么?并说说复制原理

       MongoDB复制集(Mongodb replica sets )可以提高数据的冗余及增加高可用性。MongoDB通过复制将数据同步在多个服务器的过程,复制提供了数据的冗余备份,并在多个服务器上存储数据副本,提高了数据的可用性, 并可以保证数据的安全性,复制还允许从硬件故障和服务中断中恢复数据。在MongoDB分片(sharding)中提供功能支持。

       MongoDB复制原理:

      mongodb的复制至少需要两个节点。其中一个是主节点,负责处理客户端请求,其余的都是从节点,负责复制主节点上的数据。

      mongodb各个节点常见的搭配方式为:一主一从、一主多从。

      主节点记录在其上的所有操作oplog,从节点定期轮询主节点获取这些操作,然后对自己的数据副本执行这些操作,从而保证从节点的数据与主节点一致。

      MongoDB复制结构图如下所示:

      

       以上结构图中,客户端从主节点读取数据,在客户端写入数据到主节点时, 主节点与从节点进行数据交互保障数据的一致性。

    3. MongoDB的复制方式

     1.Master-Salve(主从复制),MongoDB4.0之后就不支持主从复制了。

     2. 副本集(replica sets)。

       副本集相比较主从复制而言有2点区别:

    Master-Salve(主从复制)

    作者:syl_json
    链接:https://www.imooc.com/article/285856
    来源:慕课网
    本文原创发布于慕课网 ,转载请注明出处,谢谢合作

      1)该集群没有特定的主数据库。

      2)如果哪个主数据库宕机了,集群中就会推选出一个从属数据库作为主数据库顶上,这就是自动故障恢复功能。

    4. mongodb副本集的选举算法

      mongodb副本集的选举机制采用bully算法(Elasticsearch选举也是这个算法),bully算法是一种相对简单的协调者竞选算法,mongodb用这个算法来选举副本集中的主节点。

    MongoDB的复制


    作者:syl_json
    链接:https://www.imooc.com/article/285856
    来源:慕课网
    本文原创发布于慕课网 ,转载请注明出处,谢谢合作

  • 相关阅读:
    Android AsyncTask
    android 自定义 view 和 ViewGroup
    Android Acitivity 生命周期
    Android Service 与 IntentService
    Android LocalBroadcastManager 与 BroadcastReceiver
    如何提升 service 等级,不被kill(整合)
    Android 插件开发,做成动态加载
    新提交审核app保留检查更新入口将被拒绝(读取App Store 版本号的)
    Android: Service中创建窗口显示
    如何升级PowerShell
  • 原文地址:https://www.cnblogs.com/songgj/p/10946962.html
Copyright © 2011-2022 走看看