Sharding ,分片模式)

技术Sharding ,分片模式) Sharding (分片模式)Sharding (分片模式)
副本集可以解决主节点发生故障导致数据丢失或不可用的问题,但遇到需要存储海量数据的情况时,副本集机制就束手

切片(切片模式)

Sharding (分片模式)

副本集可以解决主节点故障导致的数据丢失或不可用的问题,但当需要存储大量数据时,副本集机制就束手无策了。副本集中的一台机器可能不足以存储数据,或者群集可能无法提供可接受的读写吞吐量。这需要MongoDB的分片技术,这是MongoDB的另一种集群部署模式。

分片是指将数据拆分并分散存放在不同机器上的过程.有时这个概念是用划分来表达的。将数据分布到不同的机器上,您就可以存储更多的数据并处理更大的负载,而无需强大的大型计算机。

MongoDB支持自动切片,可以让数据库架构对应用不可见,简化系统管理。对于应用程序来说,这就像总是使用一个MongoDB服务器。

MongoDB的分片机制允许创建一个具有多台机器的集群,这将数据子集分散在集群中,每个分片维护数据集的一个子集。与副本集相比,使用集群架构可以使应用程序具有更强大的数据处理能力。

MongoDB片段的集群模式如下图所示:

要构建一个MongoDB分片集群,有三个重要的组件,即分片服务器、配置服务器和路由服务器。

Shard Server(分片服务器)

每个分片服务器都是一个mongod数据库实例,用于存储实际的数据块。整个数据库集合被分成几个块,并存储在不同的Shard Server中。

在实际生产中,分片服务器可以由副本集中的几台机器组成,以防止整个系统由于主节点的单点故障而崩溃。

Config Server(配置服务器)

这是一个独立的mongod进程,保存集群和碎片的元数据,在集群启动之初建立,保存每个碎片包含数据的信息。

Route Server(路由服务器)

这是一个独立的mongos进程,Route Server可以作为集群中的一个路由,客户端访问它,这使得整个集群看起来像一个单独的数据库,并提供了客户端应用程序和碎片化集群之间的接口。

路由服务器本身不保存数据。启动时,它将集群信息从配置服务器加载到缓存中,并将客户端的请求路由到每个分片服务器。在每个碎片服务器返回结果后,它会将其聚合并返回给客户端。

在实际生产环境中,副本集和分片一起使用,可以满足实际应用场景中高可用性和高可扩展性的需求。

高可用 MongoDB 分布式集群架构

在实际的生产环境中,MongoDB的集群架构是分布式的。如下图所示,集群将结合副本集和分片机制,确保生产过程的高可靠性和可扩展性。

从上面的集群可以看出,整个生产集群类似于碎片化的集群架构,由三个重要的组件组成,包括Shard Server、Config Server和Route Server。不同的是,每个组件可以使用多个实例来确保集群的可靠性。

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/112509.html

(1)

相关推荐

  • 学生的拼音,用什么方法快速教孩子拼音和拼读

    技术学生的拼音,用什么方法快速教孩子拼音和拼读学习拼音,首先要让孩子熟记“三表”:声母表、韵母表、整体认读音节表学生的拼音;能熟练准确认读和默写,这是学好汉语拼音的基础.想要掌握汉语拼音,一能读准声母、韵母、声调和整体认

    生活 2021年10月30日
  • fabricca配置文件详细说明(fabric-ca设置账户使用期限)

    技术Fabric CA创建用户机制的示例分析这篇文章给大家分享的是有关Fabric CA创建用户机制的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。在研究Fabric CA 创建用户,

    攻略 2021年12月25日
  • 如何利用RMAN复制CDB的PDB

    技术如何使用RMAN对CDB中的PDB进行复制本篇内容主要讲解“如何使用RMAN对CDB中的PDB进行复制”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何使用RMAN对CD

    攻略 2021年12月21日
  • 值得收藏的CSS可视化工具有哪些

    技术值得收藏的CSS可视化工具有哪些这篇文章主要讲解了“值得收藏的CSS可视化工具有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“值得收藏的CSS可视化工具有哪些”吧

    攻略 2021年11月8日
  • 如何理解Unicode与JavaScript

    技术如何理解Unicode与JavaScript如何理解Unicode与JavaScript,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。上个月,我做了一次

    攻略 2021年11月17日
  • 如何使用源码解析AbstractOwnableSynchronizer

    技术如何使用源码解析AbstractOwnableSynchronizer如何使用源码解析AbstractOwnableSynchronizer ,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解

    攻略 2021年10月28日