- 1、本文档共9页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
数据库运维
赵鹏飞
主讲人:
分片简介与分片集群优势
人工智能技术专业群教学资源库
家国情怀、责任担当
2021年美国商务部于当地时间4月8日宣布将七家中国超级计算机公司列入实体清单,禁止美国公司向其出口。
美方多次以所谓“国家安全”、“支持中国军队现代化”等为由,滥用出口管制等措施,动用国家力量打击他国企业和机构,对国际经贸秩序造成严重破坏,对全球产业链供应链安全造成严重威胁。这不利于中国,不利于美国,也不利于整个世界。并将采取一切必要措施,坚决维护中国企业的合法权益。
分片简介
分片(sharding)是MongoDB用来将大型集合分割到不同服务器或集群所采用的方法。也可使用分区(partitioning)表示。分片的意义在于为了将大型的数据集分来进行存储,用来避免单个服务器因为磁盘容量过小而无法存储大型数据集的状况。
分片简介
手动分片
手动分片就是需要维护人员使用命令对数据库进行分片。在常用的几种数据库中,都支持手动分片。使用分片后的数据库开发的应用程序,需要保持各个数据库的独立连接。应用需要分开管理这几个数据库之间的存储,同时需要对业务进行判断从而在合适该业务的数据库上进行数据的操作。手动分片的方式可以让应用程序与不同数据库之间很好的工作,但是难以维护。
例如:如果想要对集群进行节点的删除或者添加,实现的方式都比较困难。并且需要开发人员需要手动调整参数,且需要考虑如何进行负载均衡。
分片简介
自动分片
与传统数据库不同,MongoDB可以支持自动分片。自动分片的特点是:应用程序对数据库的架构不可见。这就表明,就算是MongoDB数据库采用了多服务器集群,应用程序也像使用单机一样使用MongoDB数据库。
手动分片与自动分片的最大区别在于只需通过配置告知MongoDB需要对数据进行分片,它就能自动维护数据在不同服务器之间的均衡,将数据分散到不同的机器上来应对出现大量数据和高吞吐量时,程序应用对单机所造成过载的问题。
分片集群优势
分片是将数据水平拆分到不同的服务器上。用来解决大量数据交互问题。分片集群(ShardedCluster)是对数据进行水平扩展的一种方法,当数据量突破单机瓶颈,数据量大,恢复很慢,不利于数据管理时可使用分片集群来支持这种大数据集和高吞吐量的业务场景。
在MongoDB中,由于分片集群的存在,给开发者进行数据库的操作及内容的存储提供了非常大的便利,如下所示。
分片集群优势
(1)易用性
MongoDB自带了一个叫做mongos的专有路由进程。mongos就是掌握统一路口的路由器,其会将客户端发来的请求准确无误的路由到集群中的一个或者一组服务器上,同时会把接收到的响应拼装起来发回到客户端。
数据库
集合1
(-INF,1)
[1,20)
[20,99)
[100,INF)
集合2
分片1
分片2
拆分为4个数据块(chunk)
根据策略放置在不同分片(shard)
分片集群优势
(2)可靠性
MongoDB通过多种途径来确保集群的可用性和可靠性。将MongoDB的分片和复制功能结合使用,在确保数据分片到多台服务器的同时,也确保了每份数据都有相应的备份,这样就可以确保有服务器出现故障时,其他的副本可以立即接替故障的部分继续工作。
(3)易于扩展
当系统需要更多的空间和资源的时候,MongoDB可按需求进行系统容量的扩充。
随着数据集的增长,通过新增分片就可以加大集群的存储能力。
文档评论(0)