zoukankan      html  css  js  c++  java
  • 分片集群-Sharded Cluster

    分片概念:

      分片(sharding)是一种跨多台机器分布数据的方法, MongoDB使用分片来支持具有非常大的数据集和高吞吐量操作的部署。

      换句话说:分片(sharding)是指将数据拆分,将其分散存在不同的机器上的过程。有时也用分区(partitioning)来表示这个概念。将数据分散到不同的机器上,不需要功能强大的大型计算机就可以储存更多的数据,处理更多的负载。

      有两种解决系统增长的方法:垂直扩展和水平扩展

        垂直扩展意味着增加单个服务器的容量,例如使用更强大的CPU,添加更多RAM或增加存储空间量。可用技术的局限性可能会限制单个机器的可扩展量。此外,基于云的提供商基于可用的硬件配置具有硬性上限。结果,垂直缩放有实际的最大值。

        水平扩展意味着划分系统数据集并加载多个服务器,添加其他服务器以根据需要增加容量。虽然单个机器的总体速度或容量可能不高,但每台机器处理整个工作负载的子集,可能提供比单个高速大容量服务器更高的效率。扩展部署容量只需要根据需要添加额外的服务器,这可能比单个机器的高端硬件的总体成本更低。权衡是基础架构和部署维护的复杂性增加。
        MongoDB支持通过分片进行水平扩展。

    分片集群包含的组件:
      MongoDB分片群集包含以下组件:

        分片(存储):每个分片包含分片数据的子集。 每个分片都可以部署为副本集。
        mongos (路由):mongos充当查询路由器,在客户端应用程序和分片集群之间提供接口。
        config servers (“调度”的配置):配置服务器存储群集的元数据和配置设置。 从MongoDB 3.4开始,必须将配置服务器部署为副本集(CSRS)。

      分片集群中组件的交互:

        

         MongoDB在集合级别对数据进行分片,将集合数据分布在集群中的分片上。

  • 相关阅读:
    PowerDesigner如何设置字段为自增长
    Tab标签
    过滤数据集DataTable方法
    时间复杂度计算方法
    Oracle字符函数
    ASP.NET 应用程序生命周期概述
    在同一个DataSet中添加多个DataTable
    谈SQL SERVER数据库中的索引
    Abstract 与 Vitrual 用法
    活动图与流程图的区别
  • 原文地址:https://www.cnblogs.com/roadlandscape/p/12628316.html
Copyright © 2011-2022 走看看