发布信息

超详细 手把手教你搭建MongoDB集群搭建 (手把手讲解)

     2024-10-22 22:05:02     542

本文目录导航:

【超详细】手把手教你搭建MongoDB集群搭建

【超详细】手把手教你MongoDB集群搭建

MongoDB集群搭建重要包含两种有效模式:正本集和分片。

正本集作为基础组件之一,而分片则处置高并发和大数据量下的性能应战,经过将数据散布在多个节点上成功裁减和可用性。

分片机制详解

分片将数据库切割成小块,扩散到多台主机(shard)上,经过mongos协调,简化运行层面的路由。关键组件包含:

全体架构与步骤

搭建一个高可用集群须要15个节点,包含Docker环境的预备、网络创立,以及ConfigServer、shard和mongos的逐渐部署。以下是关键步骤:

全文详细形容了从环境性能到分片和mongos部署的整个环节,确保集群的牢靠性和裁减性。

MongoDB是一种NoSQL数据库,详细地说,是( )存储数据库。

【答案】:B本题考察NoSQL相关常识。

NoSQL是指非相关型数据库,是对不同于传统相关型数据库DBMS统称。

有几种典型NoSQL数据库。

文档存储数据库是以文档为存储消息基本单位,如baseX,CouchDB,MongoDB等。

键值存储数据库允许繁难键值存储和提取,具备极高并发读写性能,如Dynamo,Memcached,Redis等。

图形存储数据库应用计算机将点、线、面等图形基本元素依照必定数据结构启动存储,如FlockDB、Neo4j等。

多值数据库系统是一种散布式数据库系统,提供了一个通用数据集成与访问平台,屏蔽了各种数据库系统不同访问方法和用户界面,给用户出现出一个访问多种数据库公共接口。

删除MongoDB反双数据的4种方法

前言

妇孺皆知,咱们经常会用MongoDB存储少量数据。
手把手讲解
但是,有时刻咱们遗记在建设汇合的时刻给某些字段设置unique属性,造成数据库中会存在少量重复的数据,这时刻如何删除这些数据就成了一个令人脑壳疼的疑问。

在数据量较小的状况下,可以间接写一个python脚本,经过导出已有数据并拔出到已建设unique索引的汇合中处置疑问。

但是,but,假设数据量较大的话,经常使用脚原本处置要消耗十分少量的期间,这种时刻就须要想想其余方法了

几种方法方法一:经常使用python脚本处置frompymongoimportMongoClient#关上汇合client=MongoClient(address,port)db=_namecollection=_namepatents=[]#存储已遍历过的unique字段count=():ifitem[key_is_unique]notinpatents:#判别以后文档能否在之前曾经遍历过(item[key_is_unique])#该文档设置成已遍历_one(item)#删除重复文档方法二:在mongo命令行经常使用命令间接处置([{$group:{_id:{content:$content,endTime:$endTime,startTime:$startTime},count:{$sum:1},dups:{$addToSet:$_id}}},{$match:{count:{$gt:1}}}])(function(it){();({_id:{$}});});

对命令的一些说明

经常使用aggregate聚合查问反双数据

\$group中是查问条件,依据content、endTime、startTime字段来聚合相反的数据;

\$count用来统计重复产生的次数,\$match来过滤没有重复的数据;

\$addToSet将聚合的数据id放入到dups数组中繁难前面经常使用;

查问结果经常使用forEach启动迭代id来删除数据

shift()作用是剔除队列中第一条id,防止删掉一切的数据;

方法三:间接在原汇合建设索引,在让MongoDB在建设索引的环节中删除反双数据

({your_unique_key:1},{unique:true,dropDups:true})

上述命令的dropDups参数通知MongoDB,假设遇上了unique抵触的数据,就间接删除抵触的数据

方法四:经过MongoDB的原生允许,先导出数据为bson文件,再将bson文件数据导入到已建设索引的新汇合中mongodump-ddb_name-ccollection_name-o/_collection_({要建设的索引},{unique:true,dropDups:true})mongorestore-ddb_name-cnew_collection_name/tmp/db_name/collection_结语

上述提供了四种删除MongoDB反双数据的方法,每种方法各有自己的优缺陷,大家可以依据自己的须要启动选用。

相关内容 查看全部