MongoDB
slimina
这个作者很懒,什么都没留下…
展开
-
MongoDB journal介绍
Mongodb在1.8版本之后开始支持journal,就是我们常说的redo log,用于故障恢复和持久化。 一、启动 启动journal功能使用mongod --journal选项,也可以关闭--nojournal,在2.0之后的版本,journal都是默认打开的,以确保数据安全。在version 二、文件、恢复和备份 journal存放在数据文件的/journal/文件夹下,运行时的文件一般是原创 2015-03-21 11:20:25 · 3070 阅读 · 0 评论 -
MongoDB 副本集介绍
副本集包括三种节点:主节点、从节点、仲裁节点。主节点负责处理客户端请求,读、写数据, 记录在其上所有操作的oplog;从节点定期轮询主节点获取这些操作,然后对自己的数据副本执行这些操作,从而保证从节点的数据与主节点一致。默认情况下,从节点不支持外部读取,但可以设置;副本集的机制在于主节点出现故障的时候,余下的节点会选举出一个新的主节点,从而保证系统可以正常运行。仲裁节点不复制数据,仅参与投票。由于它没有访问的压力,比较空闲,因此不容易出故障。由于副本集出现故障的时候,存活的节点必须大于副本集节点总数的原创 2015-03-17 20:52:05 · 1443 阅读 · 0 评论 -
MongoDB 文档的嵌入和引用
mongodb是介于关系型与非关系型数据之间的,mongodb的join查询可以通过引用来实现。 可以将文档内容嵌入到另一个文档中,也可以将文档内容引用到另一个文档中。 嵌入意味着要把某一类型的数据,如包含更多数据的数组,嵌入到文档本身。 引用意味着创建一个引用,包含另一个文档的数据。相当于关系型数据库。原创 2015-03-18 20:42:00 · 1415 阅读 · 0 评论 -
MongoDB 导入与导出
mongodb自带导入导出命令:mongoexport和mongoimport原创 2015-03-21 11:35:36 · 1204 阅读 · 0 评论 -
MongoDB 常见集群部署Replica Sets + Sharding
MongoDB Auto-Sharding 解决了海量存储和动态扩容的问题,但离实际生产环境所需的高可靠、高可用还有些距离,所以有了"Replica Sets + Sharding"的解决方案。原创 2015-03-17 21:58:10 · 2247 阅读 · 0 评论 -
MongoDB Replica Sets管理
MongoDB Replica Sets 不仅提供高可用性的解决方案,它也同时提供负载均衡的解决方案,增减Replica Sets 节点在实际应用中非常普遍,例如当应用的读压力暴增时,3 台节点的环境已不能满足需求,那么就需要增加一些节点将压力平均分配一下。原创 2015-03-17 21:28:16 · 802 阅读 · 0 评论 -
MongoDB 运维管理
MongoDB在bin目录下提供了一系列有用的工具,可以很方便的进行运维管理。原创 2015-03-21 19:15:35 · 2906 阅读 · 0 评论 -
MongoDB nagios check_mongodb插件监控
当在生产环境下使用某种服务时,相应的监控措施也应当完善起来,来检测服务是否正常和获取相关信息是很有必要的。原创 2015-03-21 14:20:33 · 1648 阅读 · 0 评论 -
MongoDB 日志管理
MongoDB默认情况下不会自动的切换轮转日志的,这将会导致日志日渐增大,在繁忙的业务下,日志增长量非常大的。如此之大的日志文件,查看某天的日志也不太方便。如是,需要对mongodb 日志文件进行切换,保留7天。原创 2015-03-21 12:17:54 · 4280 阅读 · 0 评论 -
MongoDB 备份脚本
适用于mongodb任何架构(standalon、replic set、sharding)备份脚本。原创 2015-03-21 12:10:18 · 1167 阅读 · 0 评论 -
MongoDB 监控备份工具MMS
MongoDB的管理服务(MMS)是用于监控和备份MongoDB的基础设施服务。其中监控的服务是免费的,备份的服务是需要收费的。并提供了手机版,可以在google play商城上下载,名字叫做MongoDB Management Service(MMS)。原创 2015-03-21 14:30:27 · 5431 阅读 · 0 评论 -
MongoDB 索引之介绍与使用
MongoDB中的索引其实类似于关系型数据库,都是为了提高查询和排序的效率的,并且实现原理也基本一致,大部分优化MySQL索引的技巧也同样适用于mongodb。由于集合中的键(字段)可以是普通数据类型,也可以是子文档。MongoDB可以在各种类型的键上创建索引。索引是对数据库表中一列或多列的值进行排序的一种特殊的数据结构,存储在一个易于遍历读取的数据集合中。当查询中用到某些条件时,可以对该键建立索引,能够极大的提高查询的效率,如果没有索引,MongoDB在读取数据时必须扫描集合中的每个文件并选取那些符合查询原创 2015-03-19 21:07:42 · 2066 阅读 · 0 评论 -
MongoDB 高级查询(一)
介绍mongodb常用查询函数、正则等.......原创 2015-03-18 20:52:02 · 1083 阅读 · 0 评论 -
MongoDB oplog剖析
MongoDB 的Replication是通过一个日志来存储写操作的,这个日志就叫做oplog。journal是Mongodb中的redo log,而Oplog则是负责复制的binlog(对应Mysql)。在默认情况下,oplog分配的是5%的空闲磁盘空间。通常而言,这是一种合理的设置。可以通过mongod –oplogSize来改变oplog的日志大小。Oplog和数据刷新到磁盘的时间是60s,原创 2015-03-21 11:26:01 · 8948 阅读 · 0 评论 -
MongoDB 介绍
介绍MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。他支持的数据结构非常松散,是类似json的bjson格式,因此可以存储比较复杂的数据类型。Mongo最大的特点是他支持的查询语言非常强大,其语法有点类似于面向对象的查询语言,几乎可以实现类似关系数据库单表查询的绝大部分功能,而且还支持对数据建立索引。官网:http://www.mongo原创 2015-03-14 14:33:35 · 1531 阅读 · 0 评论 -
数据库高可用架构(MySQL、Oracle、MongoDB、Redis)
MySQL、Oracle、MongoDB、Redis各种场景高可用架构转载 2016-11-04 23:04:45 · 2921 阅读 · 0 评论 -
MongoDB Capped Collection
capped collections 是性能出色的有着固定大小的集合,以LRU(Least Recently Used 最近最少使用)规则和插入顺序进行age-out(老化移出)处理,自动维护集合中对象的插入顺序,在创建时要预先指定大小。如果空间用完,新添加的对象将会取代集合中最旧的对象原创 2015-03-18 21:29:30 · 1936 阅读 · 0 评论 -
MongoDB 整合Spring(spring-data-mongodb)
Spring Data for MongoDB是Spring Data的一个子模块。 目标是为MongoDB提供一个相近的一致的基于Spring的编程模型。Spring Data for MongoDB核心功能是映射POJO到Mongo的DBCollection中的文档,并且提供Repository 风格数据访问层。原创 2015-03-15 23:32:07 · 18704 阅读 · 1 评论 -
MongoDB GridFS java存取文件
GridFS首先会在当前数据库创建两个集合:"fs.files"和"fs.chunks"集合,前者记录了文件名,文件创建时间,文件类型等基本信息;后者分块存储了文件的二进制数据(并支持加密这些二进制数据)。分块的意思是把文件按照指定大小分割,然后存入多个文档中。"fs.files"怎么知道它对应的文件二进制数据在哪些块呢?那是因为在"fs.chunks"中有个"files_id"键,它对应"fs.files"的"_id"。"fs.chunks"还有一个键(int型)"n",它表明这些块的先后顺序。这两个集合原创 2015-03-15 18:33:19 · 14278 阅读 · 3 评论 -
几种常见的NoSQL数据库比较
各种nosql数据库的比较Cassandra,MongoDB,CouchDB,Redis,Riak,HBase....原创 2015-04-05 19:34:02 · 1914 阅读 · 0 评论 -
MongoDB使用小结
1、count统计结果错误这是由于分布式集群正在迁移数据,它导致count结果值错误,需要使用aggregate pipeline来得到正确统计结果,例如:db.collection.aggregate([{$group: {_id: null, count: {$sum: 1}}}])引用:“On a sharded cluster, count can result i转载 2015-04-05 10:56:02 · 1033 阅读 · 1 评论 -
MongoDB 地理位置索引
关于LBS相关项目,一般存储每个地点的经纬度的坐标, 如果要查询附近的场所,则需要建立索引来提升查询效率。 Mongodb专门针对这种查询建立了地理空间索引。 2d和2dsphere索引,分别是针对平面和球面。原创 2015-04-05 10:54:48 · 6895 阅读 · 0 评论 -
MongoDB Master+Master同步
MongoDB支持主主复制,但是在大部分情况下官方不推荐使用。原创 2015-03-18 20:29:31 · 1441 阅读 · 0 评论 -
MongoDB 索引之全文索引
mongodb full text search(fts:全文搜素)是在版本2.4新加的特性。在以前的版本,是通过精确匹配和正则表达式来查询,这效率是很低的。全文索引,能够从大量的文本中搜索出所需的内容,内置多国语言和分词方法。不支持宇宙第一语言—中文。全文索引会导致mongodb写入性能下降,因为所有字符串都要拆分,存储到不同地方。原创 2015-03-19 21:34:07 · 8852 阅读 · 4 评论 -
MongoDB 备份与还原
mongodb数据备份和还原主要分为二种,一种是针对于库的mongodump和mongorestore,一种是针对库中表的mongoexport和mongoimport,上一节我们已经介绍过。原创 2015-03-21 12:04:47 · 5946 阅读 · 1 评论 -
MongoDB log4j 日志整合,统一管理
在分布式系统当中,这些服务可能分别部署在不同的服务器上,并且有各自的日志输出。为了方便对这些日志进行统一管理和分析。我们可以将日志统一输出到指定的数据库系统中,而再由日志分析系统去管理。而这个储存日志的数据库目前最适合的还是mongodb,一是因为它轻便、简单,与log4j整合方便,对系统的侵入性低。二是因为它与大型的关系型数据库相比有不少优势,比如查询快速、储存结构(json)利于扩展、免费等原创 2015-03-21 20:16:57 · 3474 阅读 · 0 评论 -
MongoDB3.0介绍
MongoDB 3.0 版本标志着 MongoDB 数据库进入了一个全新的发展阶段,提供强大、灵活而且易于管理的数据库管理系统。此版本在性能和伸缩性方面都有非常巨大的提升,通过在存储层的大幅改进实现。内建 WiredTiger存储引擎,这是一项难以置信的技术实现,提供无门闩、非堵塞算法来利用先进的硬件平台(如大容量芯片缓存和线程化架构)来提升性能。通过 WiredTiger ,MongoDB 3.0 实现了文档级别的并发控制,因此大幅提升了大并发下的写负载。透明的磁盘压缩技术减少对存储的容量要求达 80%。原创 2015-03-21 20:15:38 · 2150 阅读 · 0 评论 -
MongoDB 集群介绍
Mongodb一共有三种集群搭建的方式:Master-Slaver(主从)、Replica Set(副本集)、Sharding(切片)。原创 2015-03-16 20:35:01 · 1394 阅读 · 0 评论 -
MongoDB 常用命令介绍
在安装MongoDB后,启动服务器进程(mongod),可以通过在客户端命令mongo实现对MongoDB的管理和监控。看一下MongoDB的命令帮助系统。原创 2015-03-14 17:13:50 · 2666 阅读 · 0 评论 -
MongoDB Replica Set集群部署
复制集是一个带有故障转移的主从集群。是从现有的主从模式演变而来,增加了自动故障转移和节点成员自动恢复。复制集模式中没有固定的主结点,在启动后,多个服务节点间将自动选举产生一个主结点。该主结点被称为primary,一个或多个从结点被称为secondaries。primary结点基本上就是master结点,不同之处在于primary结点在不同时间可能是不同的服务器。如果当前的主结点失效了,复制集中的其余结点将会试图选出一个新的主结点。复制集模式的好处是,一切自动化。首先,复制集模式本身做了大量的管理工作,自动管原创 2015-03-16 21:01:31 · 2467 阅读 · 0 评论 -
MongoDB 提高安全技巧
MongoDB提供了一系列组件来提升数据的安全性。使用下面几条可以用来改善MongoDB服务器安全性。原创 2015-03-19 21:36:28 · 942 阅读 · 0 评论 -
MongoDB 让secondary支持读操作
对于replica set 中的secondary 节点默认是不可读的。在写多读少的应用中,使用Replica Sets来实现读写分离。通过在连接时指定或者在主库指定slaveOk,由Secondary来分担读的压力,Primary只承担写操作。原创 2015-03-19 21:44:34 · 6218 阅读 · 1 评论 -
MongoDB 性能优化之常用技巧
MongoDB 性能优化之常用技巧。转至:http://blog.csdn.net/sd0902/article/details/16119709原创 2015-03-19 21:42:16 · 1953 阅读 · 0 评论 -
MongoDB 性能优化之索引优化
索引是用来加快查询速度的,事物都有双面性的,同时在每次插入、更新和删除操作时都会产生额外的开销。索引有时并不能解决查询慢的问题,一般来说,返回集合中一半以上的结果,全表扫描要比查询索引更高效些。创建太多索引,会导致插入非常慢,同时还会占用很大空间。可以通过一些工具来分析查询的效率来进一步优化索引。原创 2015-03-19 21:39:25 · 8259 阅读 · 0 评论 -
MongoDB 性能优化之分页查询
最常见的分页采用的是skip+limit这种组合方式,这种方式对付小数据倒也可以,但是对付上几百上千万的大数据,只能力不从心。通过如下思路改善,可以大大提高查询速度:条件查询+排序+限制返回记录。边查询,边排序,排序之后,抽取第一次分页中的最后一条记录,作为第二次分页的条件,进行条件查询,以此类推....原创 2015-03-19 21:39:39 · 19992 阅读 · 1 评论 -
MongoDB 安全介绍
MongoDB 安全介绍:权限、角色及用户授权......原创 2015-03-19 21:35:13 · 823 阅读 · 0 评论 -
MongoDB 高级查询(二)
介绍mongodb的筛选返回值、游标、存储过程、Group及聚合函数的使用......原创 2015-03-18 21:00:11 · 804 阅读 · 0 评论 -
MongoDB MapReduce使用
MapReduce是个非常灵活和强大的数据聚合工具。它的好处是可以把一个聚合任务分解为多个小的任务,分配到多服务器上并行处理。原创 2015-03-18 21:19:41 · 848 阅读 · 0 评论 -
MongoDB Master-Slaver集群部署
一个是以主模式启动,另一个属于从模式启动。原创 2015-03-16 20:45:40 · 2753 阅读 · 1 评论 -
MongoDB 安装及测试
为了学习先单机安装,尝试一下mongodb的魅力。当前最新版本为3.0,目前我们以2.6.8版本为例,后续再专门了解一下mongodb 3.0。原创 2015-03-14 16:57:00 · 1475 阅读 · 0 评论