MongoDB
文章平均质量分 86
lovely可爱欧辰
余好读书,乐思善疑。有过目不忘之能,亦有掩卷即忘之病,故尝攥文以记之。
展开
-
MongoDB 性能瓶颈分析
一、前情简介 半个月前,公司的MongoDB压力由于用户量暴增导致压力急剧增加,读写能力下降。 因为对于Mongos 的集群分片机制的了解和测试还不是很充分,所以开始使用最简单的办法来解决:提高配置。 众所周知,MongoDB是出了名的吃内存。当时定义出来提高MongoDB的办法很简单,插内存。 但是由于机房问题,插内存需要拔电源,导致停止产品的服务,所以经过研究后。 用我转载 2016-03-30 15:42:12 · 8071 阅读 · 3 评论 -
Mongodb在renameCollection之后,记得千万要立即补建索引
mongodb执行完renameCollection之后,记得千万要立即建索引. 因为mongodb的新insert语句只负责create collections,不负责create index, 如果在production上面, 记得提前写好collection的indexes, rename之后重新补上. 否则应用access会变得very slow very转载 2017-09-14 17:01:09 · 1208 阅读 · 0 评论 -
MongoDB 查询时间差问题修复
mongodb中存储的时间是标准时间UTC +0:00 而咱们中国的失去是+8.00 。在C#中取回DateTime数据时候要转换成LocalTime格式不然总会缺少8小时,这是因为MongoDB采取的是UTC时间,而通常系统用的是Local时间(中国),时区不同如果不注意会出现时间不对称 。[csharp] view plaincopy转载 2017-07-29 08:58:04 · 1610 阅读 · 0 评论 -
mongodb 对内存的严重占用以及解决方法
mongodb 对内存的严重占用以及解决方法【转载】 刚开始使用mongodb的时候,不太注意mongodb的内存使用,但通过查资料发现mongodb对内存的占用是巨大的,在本地测试服务器中,8G的内存居然被占用了45%。汗呀。 本文就来剖析一下mongodb对内存的具体使用方法,以及生产环境针对mongodb占大量内存的问题的解决。 先看一个MongoDB服务器的top命令结果转载 2017-06-23 09:54:33 · 47570 阅读 · 6 评论 -
mongoDB add user in v3.0 问题的解决(Property 'addUser' of object admin is not a func)
mongoDB add user in v3.0 问题的解决(Property 'addUser' of object admin is not a func)#问题:创建mongodb帐户时,出错> db.addUser('jyu', 'aerohive') 2015-08-05T20:03:02.767+0800 E QUERY TypeError: Pr转载 2016-10-20 13:57:46 · 1210 阅读 · 0 评论 -
MongoDB Wiredtiger存储引擎实现原理
Mongodb-3.2已经WiredTiger设置为了默认的存储引擎,最近通过阅读wiredtiger源代码(在不了解其内部实现的情况下,读代码难度相当大,代码量太大,强烈建议官方多出些介绍文章),理清了wiredtiger的大致原理,并简单总结,不保证内容都是正确的,如有问题请指出,欢迎讨论交流。按照Mongodb默认的配置,WiredTiger的写操作会先写入Cache,并持久化到W转载 2016-07-13 14:15:32 · 2297 阅读 · 0 评论 -
使用NOSQL的MongoDB时建立索引需要注意的几点建议和Explain优化分析
第一,MongoDB索引和MySQL索引非常相似并且对于MySQL的索引优化有很多也适用于MongoDB。第二,更重要的是,这些索引的建议对你的应用提高也是有限的。对于应用的最佳索引策略应该基于很多的重要因素。包含了你期望查询的类型,数据读取与写入的比率,甚至于你服务器的空闲内存。意思就是,需要对线上的产品做很多的测试剖析工作,才能调整出最佳的索引策略。没有什么好的方法可以替代转载 2016-06-30 16:09:33 · 12408 阅读 · 0 评论 -
mongodb 索引建立问题
mongodb 索引建立问题1.主从库索引建立不是同步建立: MONGODB 2.6.6 版本,索引建立并不是同步的,而是主库建立完成后,从库接着建立索引。 不知是3.0版本是否也一样,以前使用3.0版本也没去监控主从日志情况。这坑太大了。 5:00开始建立,以为主库完成即OK. 官方说明: Background原创 2016-06-30 15:54:20 · 1021 阅读 · 0 评论 -
MongoDB 3.0 用户创建
文章转自:http://www.cnblogs.com/zhoujinyi/p/4610050.html摘要: MongoDB 3.0 安全权限访问控制,在添加用户上面3.0版本和之前的版本有很大的区别,这里就说明下3.0的添加用户的方法。环境、测试: 在安装MongoDB之后,先关闭auth认证,进入查看数据库,只有一个lo转载 2016-06-29 17:45:04 · 334 阅读 · 0 评论 -
可能是目前最详细的游戏运维指南
一直以来,中国网游在世界上都处于举足轻重的地位。从最早的端游到页游再到手游,不仅市场用户爆发式增长,近15年来网游技术的发展也是无比迅速。和单机游戏不同,网游除了游戏制作本身以外还牵涉到服务器端,再好的游戏如果出现链接、延迟等问题时也会造成巨大损失,这时候游戏运维便发挥了举足轻重的作用。中国网游的发展史,其实也是游戏运维的变革史,今天便由经典武侠手游《大掌门》运维掌门人吴启超来向我们讲述,进入游戏转载 2016-07-11 14:55:41 · 7658 阅读 · 0 评论 -
MongoDB Driver:使用正确的姿势连接复制集
MongoDB复制集(Replica Set)通过存储多份数据副本来保证数据的高可靠,通过自动的主备切换机制来保证服务的高可用。但需要注意的时,连接副本集的姿势如果不对,服务高可用将不复存在。使用复制集时你需要知道的MongoDB复制集里Primary节点是不固定的,当遇到复制集轮转升级、Primary宕机、网络分区等场景时,复制集可能会选举出一个新的Primary,而原来转载 2016-03-25 16:16:56 · 2753 阅读 · 0 评论 -
MongoDB 语法和mysql语法对比学习
查询test所有数据 db.test.find() //select * from test 通过指定条件查询 db.test.find({‘last_name': ‘Smith'});//select * from test where last_name='Smith' 指定多条件查询 db.test.find转载 2016-02-26 17:49:18 · 530 阅读 · 0 评论 -
大规模运行MongoDB应该知道的10件事
MongoDB的首席解决方案架构师Asya Kamsky 最近发表了一篇文章,概括了大规模运行MongoDB需要知道的10件事。MongoDB也需要DevOps。MongoDB是一个数据库。和任何其他的数据存储一样,它也需要容量计划、调整、监控和维护。不要因为它很容易安装、入门,同时与关系型数据库相比能够更加自然地满足开发人员的范例就认为MongoDB不需要适当的照顾和喂养。开发时它能转载 2016-03-22 14:07:22 · 3578 阅读 · 0 评论 -
MongoDB 优化器profile
1、概述 Mongodb profiling是Mngodb提供的类似于mysql的慢查询的功能,用于记录执行时间超过多少的语句,默认记录在system.profile中。2、开启profiling功能通过客户端开启profile级别有三种:0:不开启1:记录慢命令,默认为大于100ms2:记录所有命令3、查询profiling转载 2016-02-24 16:55:04 · 653 阅读 · 0 评论 -
MongoDB管理:慎用local、admin数据库
MongoDB副本集默认会创建local、admin数据库,local数据库主要存储副本集的元数据,admin数据库则主要存储MongoDB的用户、角色等信息。慎用local数据库local数据库,从名字可以看出,它只会在本地存储数据,即local数据库里的内容不会同步到副本集里其他节点上去;目前local数据库主要存储副本集的配置信息、oplog信息,这些信息是每个Mongod进转载 2016-03-31 15:21:38 · 6452 阅读 · 1 评论 -
查看MongoDB索引的使用,管理索引
前一篇简单介绍了索引,并给出了基本的索引使用,这一次,我们进一步说一下MongoDB中的索引,包括如何查看查询是否走索引,如何管理索引和地理空间索引等。【使用explain和hint】前面讲高级查询选项时,提到过"$explain" 和 ”$hint“可以作为包装查询的选项关键字使用,其实这两个本身就可以作为操作游标的函数调用!游标调用explain函数会返回一个文档,用于描述当前转载 2016-02-22 16:50:07 · 5970 阅读 · 0 评论 -
关于MongDB数据迁移方案的研究
如果说mongodb在设计上有什么缺陷,那数据迁移应该算是不小的一个,在集群内部,不同分片之间的auto-balance问题频出,无法用于实际生产环境,而集群之间的数据迁移也没有给出一个可行的方案.对于集群内部的负载均衡,我们使用了pre-split,关闭了auto-balance,定期move chunk,并将move chunk分成了copy到目标分片,更新config路由与remov转载 2016-03-30 15:48:12 · 649 阅读 · 0 评论 -
学习MongoDB 十一: MongoDB聚合(Aggregation Pipeline基础篇上)(三)
一、Aggregate简介 db.collection.aggregate()是基于数据处理的聚合管道,每个文档通过一个由多个阶段(stage)组成的管道,可以对每个阶段的管道进行分组、过滤等功能,然后经过一系列的处理,输出相应的结果。 图来自https://docs.mongodb.co转载 2017-09-01 17:27:16 · 1577 阅读 · 0 评论