在CentOS 7上使用Yum源安装和卸载 MongoDB 3.4

在CentOS 7上使用Yum源安装和卸载 MongoDB 3.4 1.配置Yum源vim /etc/yum.repos.d/mongodb-org-3.4.repo[mongodb-org-3.4]   name=MongoDB Repository    baseurl=https://repo.mongodb.org/yum/redhat/$

原创 点赞1 阅读6220 收藏0 评论0 2017-05-18

分布式计算的重要原则--CAP理论

在分布式计算技术的设计和实现中,CAP理论是一个重要的指导原则,其基本内容如下:1、“C”是指一致性,即当一个Process(过程)修改了某个数据后,其他Process读取这是数据是,得到的是更新后的数据,但并不是所有系统都可以做到这一点。例如,在一些并非严格要求一致性的系统中,后来的Process得到的数据可能还是修改之前的数据,或者需要等待一定时间后才能得到修改之后的数据,这被成为“弱一致性”

转载 点赞1 阅读2465 收藏1 评论0 2017-03-26

MongoDB根据时间aggregate示例

需要对下面的集合根据LastUpdate按天分组累加TranslateFields值。rs_test:SECONDARY> db.new_result.find();    { "_id" : ObjectId("57fb0756e31f84a56ed41889"), "LastUpdate" :&nb

原创 点赞1 阅读2590 收藏1 评论0 2016-10-12

MongoDB查询 之 数组、内嵌文档和$where

【数组】查询数组很容易,对于数组,我们可以这样理解:数组中每一个元素都是这个键值对键的一个有效值,如下面的例子:我们要查询出售apple的水果店:    > db.fruitshop.find();       { "_id" : ObjectId("5

转载 点赞0 阅读3187 收藏0 评论0 2016-09-08

深入MongoDB内存溢出调优

MongoDB内存溢出错误描述exception: getMore runner error: Overflow sort stage buffered data  usage of 33638076 bytes exceeds internal l

原创 点赞0 阅读7919 收藏0 评论0 2016-08-19

MongoDB自然排序

MongoDB自然排序名词解释natural order    该排序下数据库参照文档在磁盘上的存储顺序。这是默认的排序顺序。ObjectId    一个特定的12字节BSON类型,用于保证集合中的唯一性。ObjectId基于timestamp、machine ID、process ID和 a process-local incremen

原创 点赞2 阅读5238 收藏0 评论0 2016-07-08

查询MongoDB oplog.rs

oplog是Capped Collection,默认分配5%的空闲磁盘空间。来看下oplog.rs的样子:rs_test:SECONDARY> use local switched to db local rs_test:SECONDARY> db.oplog.rs.findOne(); {   &nbs

原创 点赞0 阅读10000+ 收藏0 评论0 2016-06-14

MongoDB Tailable Cursors

MongoDB Tailable CursorsMongoDB 有一个叫 Tailable Cursors的特性,它类似于tail -f 命令,你在一个Capped Collection上面执行查询操作,当操作完成后,你可以不关闭返回的数据Cursor,并持续地从中读出新加入的数据。在高写入的Capped Collection上,索引不可用时,可使用Tailable Cursors。例如,Mong

原创 点赞1 阅读3566 收藏0 评论2 2016-06-14

MongoDB集合结构分析工具Variety

项目地址: https://github.com/variety/variety对于MongoDB这种schema-free 的数据库来说,存在数据库里的每一条数据在结构上经常不同,时间长了我们可能就很难去了解库里数据的具体结构了。今天分享一个叫Variety的小脚本,用于对collection中存储的数据情况进行分析。 Variety就是一个js脚本,直接使用mongo客户端执行。一个

原创 点赞1 阅读2844 收藏0 评论3 2016-03-22

MongoDB报表实例 -- 标签成员方案

更加复杂,但是灵活的方法,用于路由报表查询到一个专属节点去使用标签和读偏好。因为使用隐藏成员,设置一个成员为priority: 0,但是不设置它为隐藏。然而,分配一个标签use: reporting:PRIMARY> conf = rs.config()     { "_id" : "test

原创 点赞0 阅读2448 收藏0 评论0 2016-03-16

MongoDB报表实例 -- 隐藏成员方案

一个复制集的隐藏成员被配置为priority: 0,为了阻止它们被选举为主,设置hidden: true,阻止客户端连接到复制集路由读操作到它,即使他们指定了一个读偏好为secondary。从一个隐藏成员读,你会看到一个独立的连接,而不是MongoReplicaSetClient类型,并指定slave_ok。隐藏成员设置你可以使用mongo shell来隐藏一个存在复制集的成员:$ mo

原创 点赞0 阅读3272 收藏0 评论0 2016-03-16

MongoDB报表实例 -- 架构

MongoDB报表实例 -- 架构 我们在MongoDB复制集上运行应用程序,有时候有报表需求。常规用途是获得用户行为的分析,还有其他商业定制指标数据。我们不能直接在生产数据库上运行报表,在后面我会列出相关原因。经过开发和运维讨论之后,在项目成立之初,计划隔断报表任务以致不会影响到生产任务。 保持报表读操作远离生产数据库 限制报表查询到专属节点是官方推荐的权威方式,贯

原创 点赞1 阅读2816 收藏0 评论0 2016-03-16

使用YCSB检测MongoDB

使用YCSB检测MongoDB英文原文:http://blog.mongodirector.com/how-to-benchmark-mongodb-with-ycsb/ 当谈到系统性能特性,大多数DBaaS提供商提供他们预置系统的有限信息。的确,基于在这样一个系统下给定的大量参数的部署,很难准确的讨论云的实际吞吐量和延时。虚拟化环境、不可预测的负载、网络延时、不同地址位置只是考虑的一部

翻译 点赞0 阅读7299 收藏0 评论0 2016-02-03

在NoSQL中DBA的角色

在NoSQL中DBA的角色 英文原文:http://blog.mongodirector.com/the-role-of-the-dba-in-nosql/ 在快速发展的NoSQL世界里DBA的角色是什么?大多数早期使用NoSQL的是快速发展的基于公有云的小型和中型公司。在大多数这些公司里DBA角色不存在,这会导致很多人宣告DBA的结束。是DBA走向灭绝之路么?我认为答案比那更

翻译 点赞1 阅读2275 收藏0 评论2 2016-02-02

使用MongoDB快速分页

使用MongoDB快速分页 英文原文:http://blog.mongodirector.com/fast-paging-with-mongodb/ 通过你的数据分页是使用MongoDB最常用操作之一。典型的案例是需要在你的UI的表格中显示结果。如果你正在批处理数据,分页策略正确是很重要的,以致你的数据处理可扩展。 让我们通过一个示例来看看在MongoDB中通过数据分

翻译 点赞2 阅读6113 收藏0 评论1 2016-02-01

如果测试你的MongoDB应用升级?

如果测试你的MongoDB应用升级? 英文原文:http://blog.mongodirector.com/how-do-you-test-your-mongodb-application-upgrades/ 你已经选择MongoDB作为你的应用数据库。你可能已经有大量的生产数据在你的数据库里。现在你需要对你的应用做一个主版本修改。你需要如何测试确保应用新版本和你的生产数据运行

翻译 点赞0 阅读2146 收藏0 评论0 2016-02-01

MongoDB安全的3A -- 认证(Authentication)、授权(Authorization)和审计(Audit

MongoDB安全的3A -- 认证(Authentication)、授权(Authorization)和审计(Auditing)英文原文:http://blog.mongodirector.com/the-three-as-of-mongodb-security-authentication-authorization-auditing/  MongoDB公司在过去的18个月

翻译 点赞0 阅读5413 收藏0 评论0 2016-01-27

MongoDB 3.2 版本说明(Release Notes for MongoDB 3.2)

MongoDB 3.2 版本说明(Release Notes for MongoDB 3.2)英文原文:https://docs.mongodb.org/master/release-notes/3.2/ 2015年12月8日MongoDB 3.2现在发布了。关键特性是将WiredTiger作为默认存储引擎,复制选举增强,集群中的config servers配置为复制集,readConc

翻译 点赞0 阅读2694 收藏0 评论0 2016-01-27

MongoDB 3.0 新增特性一览

MongoDB 3.0 新增特性一览 引言在历经版本号修改(2.8版本直接跳到3.0版本)和11个rc版本之后,MongoDB3.0于2015年3月3日正式发布。可以毫不夸张的说,该版本的新增特性标志着MongoDB这款典型的NoSQL数据库已经进入了一个全新的发展阶段。本文以下内容会逐个盘点3.0版本的新增特性。 插件式存储引擎APIMongoDB3.0引入了插件式存储引擎A

转载 点赞0 阅读1868 收藏0 评论0 2016-01-22

CentOS6上mongodb连接数无法突破1000的解决办法

问题描述:生产环境发现CPU满负荷运行,MongoDB的连接数始终突破不了1000。解决方案:1、查看mongodb的日志,报下面的错误:Wed Nov 21 15:26:09 [initandlisten] pthread_create failed: errno:11 Resource temporari

原创 推荐 点赞1 阅读2624 收藏0 评论1 2015-12-15

MongoDB 计划缓存的影响

MongoDB 计划缓存的影响 MongoDB 2.6 复制集Primary创建索引后,发现Secondary的查询没有走最新的索引。 临时清理掉该集合的计划缓存后正常。笔者观察到出现性能问题时,语句并没有走最优的执行计划。 对于MongoDB 3.0.3及之前的版本,可以通过如下两种方法得到解决:   1. 对于查询显式指定hints。   &n

原创 点赞0 阅读2151 收藏1 评论0 2015-11-13

MongoDB 运维常用操作

MongoDB 运维常用操作     分析方法:    1. 通过top、free、iostat、iftop等工具查看Linux服务器平均负载、CPU利用率、IO、内存、swap、网络流量等,先定位到压力源头。2. 通过mongostat、mongotop等分析MongoDB读写压力。观察Page Faults、Connections、Queues等性能指标

原创 点赞0 阅读1786 收藏0 评论0 2015-11-13

mongo shell启动配置文件.mongorc.js(四)

mongo shell启动配置文件.mongorc.js(四)~/.mongorc.js文件描述如下:#mongorc.js   ===============我的 mongorc.js 文件.提供:  - `pretty()` 默认使用pretty()帮助方法查询     - `ugly()` 帮助方法      - prom

翻译 点赞0 阅读1601 收藏0 评论0 2015-10-28

mongo shell启动配置文件.mongorc.js(三)

mongo shell启动配置文件.mongorc.js(三)自定义MongoDB操作函数可以把自己写的js代码保存在某个地方,让MongoDB加载它,然后就可以在MongoDB的命令行里操作它们。mongodb shell默认会加载~/.mongorc.js文件例如以下修改了启动提示文字、左侧提示文字,增加了my_show_shards shell函数用于显示当前sharded collecti

原创 点赞0 阅读1520 收藏0 评论0 2015-10-28

mongo shell启动配置文件.mongorc.js(二)

mongo shell启动配置文件.mongorc.js(二)如果你的主目录下有个.mongorc.js文件,那么当你启动shell时他就会自动运行。使用它可以初始化任何你经常使用的helper方法和你不想意外操作的删除方法。比如,你不想使用默认的dropDatabase()方法了,你可以在.mongorc.js文件中添加下面的命令:DB.prototype.dropDatabase =

原创 点赞1 阅读1465 收藏0 评论1 2015-10-28

mongo shell启动配置文件.mongorc.js(一)

mongo shell启动配置文件.mongorc.js(一)当启动的时候,mongo检查用户HOME目录下的一个JavaScript文件.mongorc.js。如果找到,mongo在首次显示提示信息前解析.mongorc.js的内容。如果你使用shell执行一个JavaScript文件或计算表达式,要么通过在命令行使用--eval选项或者指定一个.js文件给mongo,mongo会在完成Java

原创 点赞0 阅读5209 收藏0 评论0 2015-10-28

MongoDB当前操作db.currentOp()示例

MongoDB当前操作db.currentOp()示例 停止某个操作:$ mongo --port 17380   MongoDB shell version: 2.4.5    connecting to: 127.0.0.1:17380/test    mongos> db.currentOp()    {

转载 点赞0 阅读6215 收藏0 评论0 2015-10-27

MongoDB数据预热

MongoDB数据预热 Mongodb访问磁盘中的数据要比访问内存中的数据慢得多,而且mongodb的内存是依靠操作自身管理的,不想mysql中中的innodb,存储引擎,还需要管理自己的内存调配.因此事先将磁盘中的数据加载到内存中可以大大提高mongodb的性能。 将数据库/数据目录移至内存:for file in /data/db/brains

转载 点赞0 阅读2463 收藏0 评论0 2015-10-27

MongoDB数据库管理命令touch

MongoDB数据库管理命令touch 在2.2版本新增加 touch命令从数据存储层加载数据到内存中。touch可以加载数据(如文档)索引或文档和索引。使用该命令确保一个集合,和/或它的索引,在另一个操作之前已经在内存中。通过加载集合或索引到内存中,mongod可以理想地更加有效地实施随后的操作。touch命令有如下原型格式:   { touch:&nbs

翻译 点赞0 阅读2883 收藏0 评论0 2015-10-27

JS脚本强制kill掉MongoDB慢查询

JS脚本强制kill掉MongoDB慢查询 以下是用JavaScript脚本写的循环kill操作,它可以强制kill MongoDB数据库慢查询。很多时候,有些慢查询导致MongoDB压力很大, 花了点时间写了个脚本循环kill些慢查询操作。 var j = 0;    var _DEF_TIME 

转载 点赞0 阅读5563 收藏0 评论0 2015-10-26
  • 1
  • 2
  • 3
  • 4
  • 5
写文章