mongodb介绍

mongodb介绍mongodb介绍

大家好,又见面了,我是你们的朋友全栈君。

一,memcached ,redis 属于key/value数据库

二,mongodb跟上面的区别是,它属于文档数据库,存储的是文档(Bson(基于json修改json串时,这个json串后面的数据位置不发生变化,介绍空间)->json的二进制)

内部引擎用JS解释器,把文档存储成bson结构,在查询是,转换为JS对象,并可以通过熟悉的js语法来操作。

三,与传统数据相比

传统数据库:结构化数据,定好了表结构后,每一行的内容,必是符合表结构的,就是说,列的个数类型都一样。

mongo文档数据库,表下的每篇文档都可以有自己独特的结构(电影评论,一张表管理所有评论与回复,在传统型数据库中至少要4张表,关联度很复杂)

四:mongo命令行可以写for循环等脚本

五,索引 

1,索引提高查询速度,降低写入速度,因此要权衡常用的查询字段,不必在太多列上建索引。

2,在mongo中索引可以按字段升序降序(1生效,-1降序)来创建索引,便于排序。

3,默认使用Btree来组织索引文件(穿件索引是会产生索引文件的,也是占用空间内存的),2.4版本后也允许建立hash索引。

4,db.find(query).explain(),如果输出显示|“cursor”:BasicCursor 说明没有索引发挥作用。

5,索引分类:普通索引(单列索引,多列索引),唯一索引(被加索引的key值唯一,否则报错 ,需设置unique:true),稀疏索引(如果被索引的字段的值是空的,将不建立索引与之相对,普通索引不管被索引字段的值是不是空的都会把该文档的field列的值认为null,并建索引)

6,对hash查询和Btree查询的介绍

二叉树(Btree):即二分法查询,根据大小范围缩小查询位置,具有排序特性,mysql具有此种查询方式。

哈希(hash):散列存储(即数据在硬盘上东一个西一条),它是根据hash算法,为每条数据指定存储位置,查找的时候也是根据hash算法瞬间找到数据位置具有很快的查询速度。但是由于散列存储,所以数据不具有排序聚合特性。不适合查询有序的集合数据。

6,replication set复制集

多台服务器维护相同的数据副本,提高服务器的可用性。

基本的一个primary(主节点),两个secondary(副本节点),三个节点两两相互通信,发送心跳信息(至于为什么两个副本也要通信是因为,如果主节点挂了,两副本要竞争)

7,shard分片,把数据分块存储(比如:1-1千万条数据放在shard1,1千万-2千万条数据放在shard2等)

数据存储到不同的分片需要通过mongos路由器,分发到指定的分片,怎么指定呢,在路由器与分片见有个configsvr,它不存储正真的数据,而是meta元信息,即某条数据在那个分片上的信息。

mongos查询某条数据时,要先找configsvr,询问得到该数据在那个shard上(当然要先设定好分片规则)

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/105984.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 浏览器offsetWidth、clientWidth、scrollWith等总结

    浏览器offsetWidth、clientWidth、scrollWith等总结  对象尺寸会涉及width和height,我们以width为例,height则是一样的道理。  1、clientWidth:对象可见的宽度,不包括滚动条等边线,会随窗口的显示大小改变。  clientWidth = 元素width+padding  2、scrollWidth:实际内容的宽,不包括边线宽度,会随着对象中内容的多少改变。  无滚动时等于c…

  • 【整理】IDEA优化措施

    【整理】IDEA优化措施IDEA优化措施:包括快捷键、版本管理、语法规则检查、插件推荐、运行配置等

  • 教你PSD文件如何预览(支持32以及64位win7系统)

    教你PSD文件如何预览(支持32以及64位win7系统)相信随着软矿发出关于AdobeCS6的系列文章,很多矿友们已经按捺不住都早早的安装上了吧!但是笔者安装之后发现之前安装的PhotoshopCS5所具有的PSD文件预览功能消失了,相当郁闷的说~所以苦寻很多方法之后终于找到了消失的PSD文件预览功能。NO.1下载右侧链接的压缩包文件:点我下载下载完成后解压缩至任意目录,压缩包内容如下图所示然后将对应系统的MysticThum…

  • 485转网口的moxa(虚拟机com口和主机com口)

    影响我们一生百倍差距的四大效应观察者效应:你的世界是什么样是由你的观察决定的.这个效应是在【潜能突破】研习营课堂上发现的,我们有个练习叫三生万物,每个人都会成为一次观察者角色,当大家在成为其他角色时,他们总是发现不了自己的问题,无论我们怎样提醒都没有用,无法改变原有的模式,当他们进入观察者模式,看见其他人的行为所造成的后果时,立刻恍然大悟,主动注意自己的形为,在当下立刻发生改变.刚开始我以为这是个…

  • 安装程序在计算机中识别出下列大容量存储设备「建议收藏」

    安装程序在计算机中识别出下列大容量存储设备「建议收藏」今天使用USB安装2003在一台lenovo笔记本发现提示安装程序在计算机中识别出下列大容量存储设备解决方案:BIOS硬盘更改为兼容oride即可 转载于:https://blog.51cto.com/vn98z/905299…

  • ArcGIS10地理信息系统教程—从初学到精通—笔记(持续更新)

    ArcGIS10地理信息系统教程—从初学到精通—笔记(持续更新)arcgis10初学到精通—重要操作整理第二章ArcGIS快速入门1.设置相对路径37页2.选择要素48页3.超链接51页4.测量第三章地理数据库geodatabase有以下三种类型:文件地理数据库,个人地理数据库、arcsed数据库文件数据库:以文件夹的形式保存、管理。文件数据库可以由多个用户使用,但是同一数据在同一时间只能由一个用户编辑。个人…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号