当前位置: 首页 > news >正文

MongoDB分片集群横向扩展

目录

分片集群使用的场景

MongoDB三种架构

单机版         

复制集

分片集群

分片集群原理

分片集群特点

三种分片方式

基于范围

基于hash

自定义

小结


分片集群使用的场景

数据量大、访问性能低、恢复时间慢、数据分布广

MongoDB三种架构

单机版         

适合开发和测试使用

复制集

多节点主从高可用部署,常见的线上架构一主二从

分片集群

分片集群原理

把mongoDB的数据进行分片,分成多个节点,每个分片节点各自也有自己的复制集

 如图所示四分片的MongoDB的分片集群

Shard            复制集,一主二从高可用部署

mongos         路由节点,为应用程序提供单一入口,开发者只需要关注应用层

config           配置节点,一主二从高可用,存储数据和分片节点的映射,通过这个配置节点,可以找到知道在那个分片节点上面进行查询

分片集群特点

应用全透明,无特殊处理

数据自动均衡

动态扩容,无需下线

提供三种分片方式

三种分片方式

基于范围

选一个或几个组合字段,把这个字段的范围进行分片

优点: 范围查询性能很好

缺点: 由于是按范围分片,有可能数据不均匀,大量数据集中在一个分片节点上面

基于hash

选某个字段求hash值,根据hash值和分片节点数量,决定数据存储在哪个节点

本身hash值是随机的,所以数据分布一定是均匀的

优点: 数据分布均匀,避免了大量数据数据分布不均匀

缺点: 数据分片不连续,查询效率很低,需要很多分片节点进行查询

自定义

自己决定怎么存

如: 通过给数据打标签进行区分,存储到相应的分片节点

小结

分片集群可以有效解决性能瓶颈及系统扩容问题

分片额外消耗较多,管理复杂,尽量不要分片

http://www.dtcms.com/a/300870.html

相关文章:

  • 2.qt调试日志输出
  • 区块链共识机制与联邦学习
  • 【C++】数字cmath库常用函数
  • 基于深度学习的图像分类:使用ShuffleNet实现高效分类
  • LeetCode 1577.数的平方等于两数乘积的方法数
  • day061-全网监控
  • 【科研绘图系列】R语言绘制边际云雨图散点图
  • 【unitrix】 6.17 基本非负整数( BaseUnsigned )特质(base_unsigned.rs)
  • 【笔记】拉乌尔定律推导
  • 获取电脑主板的 通用唯一标识符(UUID)
  • C++学习(线程相关)
  • Git+宝塔面板部署Hugo博客
  • 【橘子分布式】gRPC(番外篇-客户端重试机制)
  • 五自由度磁悬浮轴承转子不平衡振动破壁战:全息前馈控制实战密码
  • 【DataWhale】快乐学习大模型 | 202507,Task08笔记
  • STM32移植LVGL9.2.1教程
  • 视频转GIF工具,一键批量制作高清动图
  • CLAP文本-音频基础模型: LEARNING AUDIO CONCEPTS FROM NATURAL LANGUAGE SUPERVISION
  • 设计模式(四)创建型:生成器模式详解
  • 设计模式(三)创建型:抽象工厂模式详解
  • 第五章第二节 对射式红外传感器计次旋转编码器计次
  • 8.c语言指针
  • 标签驱动的可信金融大模型训练全流程-Agentar-Fin-R1工程思路浅尝
  • AI驱动的金融推理:Fin-R1模型如何重塑行业决策逻辑
  • JSON格式化与结构对比
  • 2025年量子计算与前沿技术融合:六大变革性方向深度解析
  • Rust实战:高效开发技巧
  • 02人工智能中优雅草商业实战项目视频字幕翻译以及声音转译之以三方AI模型API制作方式预算-卓伊凡|莉莉
  • 【在Unity游戏开发中Dictionary、List介绍】
  • 基于Springboot+UniApp+Ai实现模拟面试小工具七:前端项目创建及框架搭建