![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Mongodb
尹吉欢
欢迎大家关注我的微信公众号‘猿天地’, 猿天地由《Spring Cloud微服务-全栈技术与案例解析》作者尹吉欢创建。 JAVA方向为主(Spring Boot, Spring Cloud,Sharding JDBC,Elastic Job,Mongodb等)。 技术之路很漫长,我们一起前行吧。 作者代码分享GitHub地址:https://github.com/yinjihuan , 个人网站:http://cxytiandi.com/course , 有任何问题或者合作请联系我。微信号:jihuan900
展开
-
MapReduce处理数据(用户使用过的产品)
数据格式如下:/* 0 */{ "_id" : 1, "logId" : "078EF19407AC4798882A7588B358B517", "logType" : 0, "username" : "0_{2001", "userIdentityIds" : -1, "productId" : 5, "version" : "11.0.4",原创 2014-09-10 09:32:42 · 1178 阅读 · 0 评论 -
搭建高可用mongodb集群(三)—— 深入副本集内部机制
在上一篇文章《搭建高可用mongodb集群(二)—— 副本集》 介绍了副本集的配置,这篇文章深入研究一下副本集的内部机制。还是带着副本集的问题来看吧!副本集故障转移,主节点是如何选举的?能否手动干涉下架某一台主节点。官方说副本集数量最好是奇数,为什么?mongodb副本集是如何同步的?如果同步不及时会出现什么情况?会不会出现不一致性?mongodb的故障转移会不会无故自动发生?什么条件会触转载 2015-01-01 19:35:24 · 1122 阅读 · 0 评论 -
把 MongoDB 当成是纯内存数据库来使用(Redis 风格)
英文原文:How to use MongoDB as a pure in-memory DB (Redis style)转载自 http://www.oschina.net/translate/how-to-use-mongodb-as-a-pure-in-memory-db-redis-style基本思想将MongoDB用作内存数据库转载 2015-01-01 20:03:36 · 1282 阅读 · 0 评论 -
WriteConcern
在恰当的地方使用MongoDB的WriteConcern.SAFE参数首先列一下WriteConcern的几种抛出异常的级别参数:WriteConcern.NONE:没有异常抛出WriteConcern.NORMAL:仅抛出网络错误异常,没有服务器错误异常WriteConcern.SAFE:抛出网络错误异常、服务器错误异常;并等待服务器完成写操作。WriteConcern.MA转载 2015-01-05 14:55:14 · 1347 阅读 · 0 评论 -
Mongodb批量更新
http://docs.mongodb.org/manual/reference/command/update/#bulk-update原创 2015-03-18 13:43:56 · 1580 阅读 · 0 评论 -
MongoDB压缩命令compact详解
MongoDB版本:2.4.10 和2.6.5comoact命令可以压缩单个集合和它的索引。以前压缩数据库的唯一办法就是执行这个数据库的repair!这个命令类似与Oracle的去高水位线!具体用法:>use testdb> db.myCollection.runCommand('compact');> db.runCommand({ compact : 'myColl转载 2015-03-31 14:17:03 · 4400 阅读 · 1 评论 -
Mongodb副本集测试
一. 有运行的副本集,然后动态添加一个节点,主节点会自动同步数据到新加的节点。二. 开始配置副本集,如果从节点有数据是不能配置成功的,所有从节点的数据必须为空,主节点可以有数据,数据会自动同步到各个从节点。三. 有运行的副本集,将优先级低于主节点的停掉,然后将其数据删除,再将主节点停掉,然后启动删除数据的节点,这样此节点就会被选举为主节点,启动成功后此节点的数据不会同步到从原创 2014-12-31 17:45:03 · 1358 阅读 · 0 评论 -
Mongodb replication set 复制集
一.配置replication set 复制集1.创建3个文件夹 mkdir /home/m17 /home/m18 /home/m19 /home/mlog2.分别启动3个实列./mongod --dbpath /home/m17 --logpath /home/mlog/m17.log --fork --port 27017 --replSet rs2./mongod --原创 2014-12-09 17:39:22 · 1404 阅读 · 0 评论 -
分享一个技术网站-猿天地-cxytiandi.com
分享一个技术网站-猿天地-cxytiandi.com原创 2016-06-29 13:05:32 · 2672 阅读 · 1 评论 -
mongodb课程介绍
MongoDB 是一个基于分布式文件存储的数据库。由 C++ 语言编写。旨在为 WEB 应用提供可扩展的高性能数据存储解决方案。MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。mongodb是目前在IT行业非常流行的一种非关系型数据库(NoSql)其灵活的数据存储方式,备受当前IT从业人员的青睐各原创 2017-03-24 10:50:49 · 1440 阅读 · 0 评论 -
mongodb视频课程以及spring data mongodb视频
MongoDB 是一个基于分布式文件存储的数据库。由 C++ 语言编写。旨在为 WEB 应用提供可扩展的高性能数据存储解决方案。MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。mongodb是目前在IT行业非常流行的一种非关系型数据库(NoSql)其灵活的数据存储方式,备受当前IT从业人员的青睐各原创 2017-04-06 12:43:34 · 2878 阅读 · 0 评论 -
spring-boot-starter-mongodb-pool
在日常工作中,我们通过Spring Data Mongodb来操作Mongodb数据库,在Spring Boot中只需要引入spring-boot-starter-data-mongodb即可。很多时候我们往往需要操作多个数据库(微服务架构下一个服务一个独立的库),最简单的方式就是在项目中为每个数据库配置下,比如:@Bean @Primarypublic MongoDbFactor...原创 2018-06-07 13:56:12 · 1681 阅读 · 0 评论 -
搭建高可用mongodb集群(一)——配置mongodb
在大数据的时代,传统的关系型数据库要能更高的服务必须要解决高并发读写、海量数据高效存储、高可扩展性和高可用性这些难题。不过就是因为这些问题Nosql诞生了。NOSQL有这些优势:大数据量,可以通过廉价服务器存储大量的数据,轻松摆脱传统mysql单表存储量级限制。高扩展性,Nosql去掉了关系数据库的关系型特性,很容易横向扩展,摆脱了以往老是纵向扩展的诟病。高性能,N转载 2015-01-01 19:17:36 · 1206 阅读 · 0 评论 -
log4j输出信息到mongodb
官网 http://log4mongo.org/display/PUB/Log4mongo+for+Java 保存主机信息,方法等 http://my.oschina.net/chinaearl/blog/111552只保存输出信息 http://www.myexception.cn/program/650442.html转载 2015-01-01 20:09:57 · 1844 阅读 · 0 评论 -
搭建高可用mongodb集群(二)—— 副本集
在上一篇文章《搭建高可用MongoDB集群(一)——配置MongoDB》 提到了几个问题还没有解决。主节点挂了能否自动切换连接?目前需要手工切换。主节点的读写压力过大如何解决?从节点每个上面的数据都是对数据库全量拷贝,从节点压力会不会过大?数据压力大到机器支撑不了的时候能否做到自动扩展?这篇文章看完这些问题就可以搞定了。NoSQL的产生就是为了解决大数据量、高扩展性、高性能、灵活数转载 2015-01-01 19:27:43 · 1296 阅读 · 0 评论 -
MapReduce处理数据(用户每周登录次数)
数据格式如下:{ "_id" : 9040001, "username" : "shao1", "cityId" : 320200, "versionVal" : NumberLong("210000200000"), "loginInIP" : "192.168.2.7", "logoutTime" : new Date("1/9/2014 21:01:0原创 2014-09-10 15:31:46 · 1435 阅读 · 0 评论 -
聚合函数使用
db.Log.aggregate([{$match: {"ft":1,"ut":{$lt:ISODate("2014-08-19 00:00:00")}}},{$group: {_id: {un:"$un"},count: { $sum: { $cond: [ { $gt: [ "$pid", 0 ] } , 1, 0] }}}},{$project:{un:1,count原创 2014-09-11 08:59:53 · 1341 阅读 · 0 评论 -
mapreduce的OutputType含义
1. REPLACE:替换之前结果集的数据。每次集合中的数据都是最新一次执行完的结果。2. MERGE:与之前的数据合并,如果之前结果集存在此数据,则不做处理,不存在则插入。比如说之前的数据是{ "_id" : 305, "value" : 2000}然后我再次执行mapreduce的结果也是{ "_id" : 305, "value" :原创 2014-09-11 09:24:37 · 1308 阅读 · 0 评论 -
java程序验证副本集读写分离
问题1:为什么我只配置了从节点的地址,也可以插入数据啊,不是说只有主节点才行写入数据的吗?链接地址只配置一个从节点,但是还是可以写入数据,原因是驱动里面做了一些操作,会去自动找到副本集的主节点,进行数据插入。问题2:那我怎么验证读取的操作是优先读取从节点的呢?将节点停到只剩下2个,这个时候就不会去选举主节点,2个都是从节点,然后设置client.setReadPreferenc原创 2015-01-06 11:14:23 · 1305 阅读 · 0 评论 -
片键的选择对分片的数据情况影响
50000条数据,自增的ID来做片键,普通索引,2个片节点,数据分布情况是17113,3288750000条数据,OBJECTID来做片键,普通索引,2个片节点,数据分布情况是47510,249050000条数据,自增的ID来做片键,哈希索引,2个片节点,数据分布情况是25398,2460250000条数据,自增的ID和OBJECTID来做片键,普通索引,2个片原创 2015-01-09 17:00:02 · 1226 阅读 · 0 评论 -
Mongodb Shard分片
Shard分片一.分片要素:1.要有N(N>2)个mongod服务做片节点2.要有configserver维护meta信息3.启动mongos做路由4.要设定好数据的分片规则(configserver才能维护)二.分片操作创建需要用到的文件夹mkdir -p /home/m17 /home/m18 /home/m20 /home/mlog启动2个片.原创 2014-12-09 17:40:26 · 1270 阅读 · 0 评论 -
spring data mongodb 设置副本集读写分离模式
一. 配置文件方式 -->二. 通过mongoTemplate对象 mongoTemplate.setReadPreference(readPreference);原创 2015-01-12 17:22:45 · 7334 阅读 · 1 评论 -
Mongodb修改列的数据类型
var cursor = db.test.PersonalOrderLog.find();cursor.forEach(function(doc){doc.pks.forEach(function(obj){obj.upid = obj.upid + "";});db.test.PersonalOrderLog.update({_id:doc._id},{$set:doc});原创 2014-12-09 17:32:29 · 3243 阅读 · 0 评论 -
搭建高可用mongodb集群(四)—— 分片
按照上一节中《搭建高可用mongodb集群(三)—— 深入副本集》搭建后还有两个问题没有解决:从节点每个上面的数据都是对数据库全量拷贝,从节点压力会不会过大?数据压力大到机器支撑不了的时候能否做到自动扩展?在系统早期,数据量还小的时候不会引起太大的问题,但是随着数据量持续增多,后续迟早会出现一台机器硬件瓶颈问题的。而mongodb主打的就是海量数据架构,他不能解决海量数据怎么行!不转载 2015-01-01 19:48:08 · 1168 阅读 · 0 评论 -
mongodb的读写分离
mongodb的读写分离使用Replica Sets来实现对于replica set 中的secondary 节点默认是不可读的。在写多读少的应用中,使用Replica Sets来实现读写分离。通过在连接时指定或者在主库指定slaveOk,由Secondary来分担读的压力,Primary只承担写操作。如果通过shell访问mongo,要在secondary进行查询。会转载 2015-01-01 20:01:24 · 1384 阅读 · 0 评论 -
Spring Boot中的Mongodb多数据源扩展
在日常工作中,我们通过Spring Data Mongodb来操作Mongodb数据库,在Spring Boot中只需要引入spring-boot-starter-data-mongodb即可。然后配置连接信息如下:spring.data.mongodb.uri=mongodb://localhost:27017/test或者pring.data.mongodb.authenticati...原创 2019-04-25 10:11:53 · 923 阅读 · 0 评论