NoSQL—mongodb常见使用和入门

NoSQL介绍:

NoSQL数据管理系统是目前非常流行的一种非关系性、分布式、不支持ACID设计规范式的数据库;NoSQL简单的数据模型、元数据和数据分离、弱一致性、高吞吐量、高水平扩展能力和低端硬件集群使其流行的主要原因,而mongodb就是NoSQL数据库一种非常流行的实现方式。

 

常见的NoSQL数据存储模型
列式模型 文档类型

应用场景:在分布式文件系统之上提供支持随机读写分离的分布式数据库

典型产品:HBase、Hypertable、Cassandra
数据模型:以“列”为中心进行存储,将相同的列存储在一起
优点:快速查询、高可扩展性、易于实现分布式扩展

应用场景:非强事务的web应用
典型产品:MongoDB、Elasticsearch、CouchDB
数据模型:键值模型,以文档存储
优点:数据模型无须事先定义
键值模型 图式模型
应用场景:
内容缓存,用于大量并发数据访问的高负载场景
典型产品:DynamoDB、Redis、Riak
数据模型:基于hash表实现的key-value
优点:查询速度快
应用场景:社交网络、推荐系统、关系图谱
典型产品:Neo4j、Infinite Graph、TITAN
数据模型:图式结构
优点:适用于图式场景计算

 

MongoDB的复制功能有两种类型:

第一种类型:master/slave模型,这类模型与MySQL模型基本相同

第二种模型:replica set复制集、副本集;服务于同一数据集的多个mongodb实例;与mysql的主从类似,但是要比mysql主从工作效率要高

特性:(1)至少三个节点,至少为奇数个节点

(2)当节点数不足时,使用arbiter(仲裁者)来参与

(3)heartbeat每2s中的信息监测以及自动失效转移

MongoDB复制集中特殊节点的类型:

(1)0优先级的节点:冷备节点,不会被选举成为主节点,但可以参与选举

(2)被隐藏的节点:首先是一个0优先级的从节点,且对客户端不可见

(3)延迟复制的节点:首先是一个0优先级的从节点,且复制时间落后于主节点一个固定时长

(4)arbiter:仲裁者,没有数据,只负责仲裁

MongoDB的复制架构:
(1)oplog:
是存储在local数据库中,最小为1G,大小为固定的文件;同时又只有主节点才可以有写入操作,而从节点不会有写入操作;而local数据存放了数据集的所有元数据和oplog,用于存储oplog的是一个名为oplog.rs的collection,oplog.rs的大小依赖于OS和文件系统;但其大小可以自定义(oplogSize)

(2)heartbeat: 用于监测各个节点复制时的信息

 

MongoDB复制过程:

(1)初时同步:initial sync

首先克隆所有数据库

其次应用数据集的所有改变;复制oplog并应用于本地

最后为所有collection构建索引

(2)回滚后追赶:post-rollback catch-up

(3)切分块迁移: sharding chunk mingratings

 

MongoDB的索引类型:

单字段索引、组合索引(多字段索引)、多键索引、空间索引、文本索引、hash索引

 

以上是本人对学习mongodb的一些总结,只总结了一些基础知识,常用命令没有总结。大家有什么好的建议多给提一下。O(∩_∩)O

原创文章,作者:马行空,如若转载,请注明出处:http://www.178linux.com/7727

(1)
马行空马行空
上一篇 2015-08-31 10:43
下一篇 2015-09-01 23:12

相关推荐

  • Linux中文件管理类命令初探

    Linux中文件管理类命令初探 文件管理通常指的是对文件或者目录进行的类似复制、移动、删除操作。 1. 文件的复制 cp 在Linux中使用cp指令完成文件复制工作,即copy之意。实际操作中又可以分为以下两种情况: 单源复制 单源复制即复制的源只有一个,这个源可以为文件或者目录。命令语法:cp [OPTION]… [-T] SOURCE DEST在实际…

    Linux干货 2016-11-06
  • Linux用户权限管理和信息查找

    这里给大家介绍一下基本的一些用户管理的命令。       基于这些命令演示一下例题如下:      复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。 [root@localhost&nbs…

    Linux干货 2016-11-20
  • 加油吧!少年!—至我和我M25期的伙伴

    引用 衣带渐宽终不悔,为伊消得人憔悴。—王国维《人间词话》 转眼已到了27岁的年纪,不知道自己是否还称得上少年。公交上让座被小朋友成为叔叔也都是很多年的事了。哪怕再有一颗少年心现在也要肩负起整个家庭的责任。 从毕业已工作了将近六个年头,无聊的工作平凡的薪水已经使我厌倦。闭上眼睛以后需要赡养四个老人,还要照顾孩子以后这些难题映入脑海。曾经以为遥远的…

    Linux干货 2017-07-11
  • yum –rpm前端工具详解

     1、yum 介绍        YUM: Yellowdog Update Modifier, rpm的前端程序,用来解决软件包相关依赖性,可以在多个库之间定位软件包,up2date的替代工具        &nbsp…

    Linux干货 2016-08-24
  • ftp服务器介绍与配置

    一、 ftp服务,File Transfer Protocal 文件传输协议      1. ftp基于tcp协议,C/S架构          Server: wu-ftpd, proftpd ,pureftp,vsf…

    Linux干货 2015-06-21
  • 天神之剑Vim编辑器

    一.概述和基本用法及一些描述 vi:Visual Interface 文本编辑器 文本ASCII , Unicode 文本编辑种类: 行编辑器:sed 全屏编辑器:nano,vi vim – Vi Improved 其他编辑器: gedit 一个简单的图形编辑器 gvim 一个vim编辑器的图形版本 基本用法  vim [OPTION]…

    Linux干货 2016-08-15