MongoDB(一)——简介
这两天简单学习了一下MongoDB数据库,属于NoSQL类型数据库的一种,先简单宏观的看一下NoSQL的相关知识和MongoDB的基础知识。
NoSQL是Not Only SQL的缩写,它指的是非关系型数据库,即有别于Oracle,mysql,sqlserver等经常使用的关系型数据库。它是以key-value形式存在,即我们熟悉的JSON数据形式。
发展:NoSQL是随着互联网Web2.0站点的兴起,传统的关系数据库在应付web2.0站点,特别是超大规模数据量和高并发的SNS类型的web2.0纯动态网站已经显得力不从心。暴露了很多难以克服的问题。而NoSQL也就是为了应付这些问题而出现,并不断发展着。
最開始是google公司的Bigtable,淘宝数据平台的Tair,视觉中国站点的MongoDB等都代表NoSQL的不断发展。
NoSQL发展迅速的原因:随着互联网的不断发展,各种类型的应用层出不穷。所以导致在这个云计算的时代。对技术提出了很多其它的需求。尽管关系型数据库已经在业界的数据存储方面占领不可动摇的地位,可是由于其天生的几个限制,使其难以满足以上的几个需求:扩展困难,读写慢,成本高,有限的支撑容量。
可是NoSQL关注的对数据高并发读写和对海量数据的存储等,与关系型数据库相比,它们在架构和数据模型方面做了削弱,而在扩展和并发等方面做了增强突出。
特点:非关系型的,分布式的。开源的,水平可扩展的。
长处:扩展简单。读写更加高速,成本更加低廉。灵活的数据模型。
不足:不提供的对SQL的支持,支持的特性不够丰富,如今的产品相比关系型数据库不够成熟。
总而言之NoSQL的出现是紧随时代的步伐——大数据。云计算而诞生,并不断发展的,是处在一个成长中的。
下边简单看一下它的比較成熟的一个产品MongoDB的简介。
MongoDB 的名称取自“humongous” (巨大的) 的中间部分。足见mongodb 的宗旨在处理大量数据上面。是一个可扩展、高性能的下一代数据库,由 C++语言编写,旨在为web 应用提供可扩展的高性能数据存储解决方式。
Mongo DB很好的实现了面向对象的思想(OO思想),在Mongo DB中每一条记录都是一个Document对象。MongoDB最大的优势在于全部的数据持久操作都无需开发者手动编写SQL语句,直接调用方法就能够轻松的实现CRUD操作。
好,看一下它有什么特性,依据这些特性我们能够选择什么时候用它:高性能、易部署、易使用,存储数据很方便是它的主要特点:
²模式自由,支持动态查询、全然索引。可轻易查询文档中内嵌的对象及数组
²面向文档存储,易存储对象类型的数据, 包括文档内嵌对象及数组
²高效的数据存储,支持二进制数据及大型对象(如照片和视频)
²支持复制和故障恢复;提供了主-从、主-主模式的数据复制及server之间的数据复制
²自己主动分片以支持云级别的伸缩性。支持水平的数据库集群,可动态加入额外的server
适用场景:
²适合作为信息基础设施的持久化缓存层
²适合实时的插入,更新与查询。并具备应用程序实时数据存储所需的复制及高度伸缩性
²Mongo 的 BSON 数据格式很适合文档化格式的存储及查询
²适合由数十或数百台server组成的数据库。由于 Mongo 已经包括了对 MapReduce 引擎的内置支持
不适用场景:
²要求高度事务性的系统
²传统的商业智能应用
² 复杂的跨文档(表)级联查询
综上,我们对NoSQL,MongoDB有了个宏观的理解,知道NoSQL出现并不断发展状态的原因,MongoDB的使用范围。好处短处等,这对于我们对此款软件的认识很重要,关系到我们技术选择的一关。就是认识人一样。我们是从总体容貌開始。然后随着不断的深入,在观察他们细节外貌。行为方式,生活习惯等等。学习一门技术也是这样。先了解他了。然后在開始一点点的学习技术,并随着使用次数的增多。不断的加深理解。不断的升华。
MongoDB(一)——简介的更多相关文章
- MongoDB数据库简介及安装
一.MongoDB数据库简介 简介 MongoDB是一个高性能,开源,无模式的,基于分布式文件存储的文档型数据库,由C++语言编写,其名称来源取自"humongous",是一种开源 ...
- MongoDB入门简介
MongoDB入门简介 http://blog.csdn.net/lolinzhang/article/details/4353699 有关于MongoDB的资料现在较少,且大多为英文网站,以上内容大 ...
- 2.MongoDB数据库简介
1).简介 MongoDB是一个基于分布式文件存储的数据库.由C++语言编写.旨在为WEB应用提供可扩展的高性能数据存储解决方案. mongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系 ...
- MongoDB第一天(MongoDB的简介和安装)
MongoDB 简介 什么是 MongoDB MongoDB 是一个基于分布式文件存储的数据库.由 C++语言编写.在为 WEB 应用提供可扩展的高性能数据存储解决方案. MongoDB 是一个介于关 ...
- mongodb使用简介
mongodb简介 在使用nodejs时候,需要存储一些简单json数据的情况下,很多人会推荐使用mongodb.mongodb是一个文档型数据库,在 sql 中,数据层级是:数据库(db) -> ...
- mongoDB 数据库简介
背景概念-数据库类型 对比关系型数据库 优点 : 逻辑清晰.容易理解,结构类似表格 使用 sql 语句技术成熟,使用方便 数据一致性好,完整性好 关系型数据库比较成熟,可以使用一些复杂操作 缺点 : ...
- MongoDB入门教程二[MongoDB Shell 简介与使用]
MongoDB Shell 是MongoDB自带的JavaScript Shell,随MongoDB一同发布,它是MonoDB客户端工具,可以在Shell中使用命令与MongoDB实例交互,对数据库的 ...
- MongoDB入门---简介
最近呢,刚好有一些时间,所以就学习了一下新的数据库类型MongoDB.要想了解这个MongoDB,我们首先需要了解一个概念,那就是nosql(not only sql).一下就是官方的概念: NoSQ ...
- Mongodb之简介
MongoDB是一个基于分布式存储的数据库,由C++语言编写,旨在为WEB应用提供的可扩展的高性能数据存储解决. MongoDB是介于关系型数据库与非关系型数据库之间的产品,也是非关系型数据库中功能最 ...
随机推荐
- HTML5开发移动web应用——Sencha Touch篇(8)
DataView是Sencha Touch中最重要的组件,用于数据的可视化.数据可视化的重要性不言而喻,能够讲不论什么数据以形象的方式展示给用户. 眼下,怎样更好地可视化是很多公司或框架都在追求的. ...
- 连载:面向对象葵花宝典:思想、技巧与实践(30) - SRP原则
前面具体阐述了"高内聚低耦合"的整体设计原则.但怎样让设计满足这个原则,并非一件简单的事情.幸好各位前辈和大牛已经帮我们归纳总结出来了,这就是"设计原则"和&q ...
- Android应用之——自己定义控件ToggleButton
我们经常会看到非常多优秀的app上面都有一些非常美丽的控件,用户体验非常好.比方togglebutton就是一个非常好的样例,IOS系统以下那个精致的togglebutton现在在android以下也 ...
- 2015.04.24,外语,读书笔记-《Word Power Made Easy》 12 “如何奉承朋友” SESSION 34
1.no fatigue indefatigable([indi'fætigәb(ә)l] adj. 不知疲倦的)来自faigue,in-是反义词缀:后缀-able表示able to be,因此ind ...
- TOMCAT虚拟路径配置
在tomcat安装好后,只要把你的web项目copy到%TOMCAT_HOME%webapp下面就可以是使用啦!!其实还有种方法就是设定虚拟目录,即把项目的目录映射到tomcat中.这样做即可以不用重 ...
- 英语发音规则---B字母
英语发音规则---B字母 一.总结 一句话总结: 1.B发[b]音? bike [baɪk] n. 自行车 bus [bʌs] n. 公共汽车 bag [bæg] n. 袋:猎获物 baby ['be ...
- hdoj--1248--寒冰王座(完全背包)
寒冰王座 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submi ...
- HDU 1575 矩阵快速幂裸题
题意:中文题 我就不说了吧,... 思路:矩阵快速幂 // by SiriusRen #include <cstdio> #include <cstring> using na ...
- Hua Wei 机试题目三---2014
一.根据对应规则进行翻译输出 描述:已知有如下的对应规则: ,则输入任意个正整数,输出经过规则翻译以后对应的结果. 例如:输入:1234:输出bcde. 题目很简单,我觉得需要注意的问题就是对于大整数 ...
- ASP.NET在IIS 5/6上的运行模型(ISAPI)
IIS 5.X中的ASP.NET 实现了Web Server和ASP.NET App的分离. IIS作为Web Server运行在InetInfo.exe进程上.该进程是非托管的本地进程. ASP.N ...