全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

mongodb分片技术_动力节点Java学院整理

在mongodb里面存在另一种集群,就是分片技术,当数据量达到T级别的时候,我们的磁盘,内存就吃不消了,针对这样的场景我们该如何应对。

一:分片

mongodb采用将集合进行拆分,然后将拆分的数据均摊到几个片上的一种解决方案。

下面我对这张图解释一下:

人脸:代表客户端,客户端肯定说,你数据库分片不分片跟我没关系,我叫你干啥就干啥,没什么好商量的。

mongos: 首先我们要了解”片键“的概念,也就是说拆分集合的依据是什么?按照什么键值进行拆分集合....

好了,mongos就是一个路由服务器,它会根据管理员设置的“片键”将数据分摊到自己管理的mongod集群,数据

分片的对应关系以及相应的配置信息保存在"config服务器"上。

mongod: 一个普通的数据库实例,如果不分片的话,我们会直接连上mongod。

二: 实战

首先我们准备4个mongodb程序,我这里是均摊在C,D,E,F盘上,当然你也可以做多个文件夹的形式。

1:开启config服务器

先前也说了,mongos要把mongod之间的配置放到config服务器里面,理所当然首先开启它,我这里就建立2222端口。

2: 开启mongos服务器

这里要注意的是我们开启的是mongos,不是mongod,同时指定下config服务器,这里我就开启D盘上的mongodb,端口3333。

3:启动mongod服务器

对分片来说,也就是要添加片了,这里开启E,F盘的mongodb,端口为:4444,5555。

4: 服务配置

哈哈,是不是很兴奋,还差最后一点配置我们就可以大功告成。

 <1> 先前图中也可以看到,我们client直接跟mongos打交道,也就说明我们要连接mongos服务器,然后将4444,5555的mongod

交给mongos,添加分片也就是addshard()。

这里要注意的是,在addshard中,我们也可以添加副本集,这样能达到更高的稳定性。

<2>片已经集群了,但是mongos不知道该如何切分数据,也就是我们先前所说的片键,在mongodb中设置片键要做两步

        ①:开启数据库分片功能,命令很简单 enablesharding(),这里我就开启test数据库。

        ②:指定集合中分片的片键,这里我就指定为person.name字段。

5: 查看效果

好了,至此我们的分片操作全部结束,接下来我们通过mongos向mongodb插入10w记录,然后通过printShardingStatus命令

查看mongodb的数据分片情况。

这里主要看三点信息:

① shards:     我们清楚的看到已经别分为两个片了,shard0000和shard0001。

② databases:  这里有个partitioned字段表示是否分区,这里清楚的看到test已经分区。

③ chunks:     这个很有意思,我们发现集合被砍成四段:

无穷小 —— jack0,jack0 ——jack234813,jack234813——jack9999,jack9999——无穷大。

分区情况为:3:1,从后面的 on shardXXXX也能看得出。


# mongodb分片技术  # mongodb  # 分片  # 如何为MongoDB添加分片副本集  # 分布式文档存储数据库之MongoDB分片集群的问题  # MongoDB搭建高可用集群的完整步骤(3个分片+3个副本)  # Mongodb副本集和分片示例详解  # MongoDB分片集群部署详解  # MongoDB分片在部署与维护管理中常见的事项总结大全  # 详解MongoDB4.0构建分布式分片群集  # MongoDB分片键的选择和案例实例详解  # MongoDB分片详解  # mongodb3.4集群搭建实战之高可用的分片+副本集  # 深入理解MongoDB分片的管理  # Mongodb 删除添加分片与非分片表维护  # MongoDB 主分片(primary shard)相关总结  # 的是  # 我就  # 好了  # 先前  # 要注意  # 干啥  # 客户端  # 几个  # 切分  # 有个  # 也就  # 多个  # 说了  # 也能  # 我对  # 跟我  # 要把  # 要做  # 更高 


相关文章: 独立制作一个网站多少钱,建立网站需要花多少钱?  ppt制作免费网站有哪些,ppt模板免费下载网站?  制作ppt免费网站有哪些,有哪些比较好的ppt模板下载网站?  简单实现Android文件上传  Thinkphp 中 distinct 的用法解析  建站主机如何选?性能与价格怎样平衡?  如何做网站制作流程,*游戏网站怎么搭建?  详解免费开源的.NET多类型文件解压缩组件SharpZipLib(.NET组件介绍之七)  Java解压缩zip - 解压缩多个文件或文件夹实例  如何在建站之星绑定自定义域名?  电商平台网站制作流程,电商网站如何制作?  如何在阿里云部署织梦网站?  公司网站建设制作费用,想建设一个属于自己的企业网站,该如何去做?  如何用手机制作网站和网页,手机移动端的网站能制作成中英双语的吗?  陕西网站制作公司有哪些,陕西凌云电器有限公司官网?  定制建站策划方案_专业建站与网站建设方案一站式指南  如何解决VPS建站LNMP环境配置常见问题?  如何设置并定期更换建站之星安全管理员密码?  手机网站制作平台,手机靓号代理商怎么制作属于自己的手机靓号网站?  如何用PHP工具快速搭建高效网站?  php8.4新语法match怎么用_php8.4match表达式替代switch【方法】  猪八戒网站制作视频,开发一个猪八戒网站,大约需要多少?或者自己请程序员,需要什么程序员,多少程序员能完成?  如何高效完成自助建站业务培训?  制作农业网站的软件,比较好的农业网站推荐一下?  深圳网站制作平台,深圳市做网站好的公司有哪些?  如何基于PHP生成高效IDC网络公司建站源码?  小说建站VPS选用指南:性能对比、配置优化与建站方案解析  天津个人网站制作公司,天津网约车驾驶员从业资格证官网?  建站之星如何防范黑客攻击与数据泄露?  制作网站外包平台,自动化接单网站有哪些?  盐城做公司网站,江苏电子版退休证办理流程?  定制建站方案优化指南:企业官网开发与建站费用解析  建站之星×万网:智能建站系统+自助建站平台一键生成  如何快速生成可下载的建站源码工具?  打鱼网站制作软件,波克捕鱼官方号怎么注册?  太原网站制作公司有哪些,网约车营运证查询官网?  Python路径拼接规范_跨平台处理说明【指导】  C#怎么创建控制台应用 C# Console App项目创建方法  如何在IIS7上新建站点并设置安全权限?  C++时间戳转换成日期时间的步骤和示例代码  在线制作视频网站免费,都有哪些好的动漫网站?  PHP正则匹配日期和时间(时间戳转换)的实例代码  c++如何打印函数堆栈信息_c++ backtrace函数与符号名解析【方法】  如何用VPS主机快速搭建个人网站?  台州网站建设制作公司,浙江手机无犯罪记录证明怎么开?  如何选择PHP开源工具快速搭建网站?  如何在VPS电脑上快速搭建网站?  C++中引用和指针有什么区别?(代码说明)  相亲简历制作网站推荐大全,新相亲大会主持人小萍萍资料?  如何通过山东自助建站平台快速注册域名? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。