欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Mongodb介绍(非原创)

程序员文章站 2022-06-29 08:39:45
文章大纲 一、什么是nosql二、mongodb与mysql比较三、参考文章 一、什么是nosql 1. 简介 这一类数据库主要会使用到一个哈希表,这个表中有一个特定的键和一个指针指向特定的数据。Key/value模型对于IT系统来说的优势在于简单、易部署。但是如果DBA只对部分值进行查询或更新的时 ......

文章大纲

一、什么是nosql
二、mongodb与mysql比较
三、参考文章

 
Mongodb介绍(非原创)

一、什么是nosql

1. 简介

这一类数据库主要会使用到一个哈希表,这个表中有一个特定的键和一个指针指向特定的数据。key/value模型对于it系统来说的优势在于简单、易部署。但是如果dba只对部分值进行查询或更新的时候,key/value就显得效率低下了

2. nosql数据库的四大分类

键值存储数据库
这一类数据库主要会使用到一个哈希表,这个表中有一个特定的键和一个指针指向特定的数据。key/value模型对于it系统来说的优势在于简单、易部署。但是如果dba只对部分值进行查询或更新的时候,key/value就显得效率低下了。举例如:tokyo cabinet/tyrant, redis, voldemort, oracle bdb.

列存储数据库
这部分数据库通常是用来应对分布式存储的海量数据。键仍然存在,但是它们的特点是指向了多个列。这些列是由列家族来安排的。如:cassandra, hbase, riak.

文档型数据库
文档型数据库的灵感是来自于lotus notes办公软件的,而且它同第一种键值存储相类似。该类型的数据模型是版本化的文档,半结构化的文档以特定的格式存储,比如json。文档型数据库可 以看作是键值数据库的升级版,允许之间嵌套键值。而且文档型数据库比键值数据库的查询效率更高。如:couchdb, mongodb. 国内也有文档型数据库sequoiadb,已经开源。

图形(graph)数据库
图形结构的数据库同其他行列以及刚性结构的sql数据库不同,它是使用灵活的图形模型,并且能够扩展到多个服务器上。nosql数据库没有标准的查询语言(sql),因此进行数据库查询需要制定数据模型。许多nosql数据库都有rest式的数据接口或者查询api。如:neo4j, infogrid, infinite graph.
因此,我们总结nosql数据库在以下的这几种情况下比较适用:1、数据模型比较简单;2、需要灵活性更强的it系统;3、对数据库性能要求较高;4、不需要高度的数据一致性;5、对于给定key,比较容易映射复杂值的环境。

3. 适用场景

(1)数据模型比较简单;
(2)需要灵活性更强的it系统;
(3)对数据库性能要求较高;
(4)不需要高度的数据一致性;
(5)对于给定key,比较容易映射复杂值的环境

4. nosql具体产品种类

(1)redis
(2)mongodb
(3)hbase等

二、mongodb与mysql比较

1. mysql

关系型数据库。
在不同的引擎上有不同 的存储方式。
查询语句是使用传统的sql语句,拥有较为成熟的体系,成熟度很高。
开源数据库的份额在不断增加,mysql的份额页在持续增长。
缺点就是在海量数据处理的时候效率会显著变慢。

2. mongodb

非关系型数据库(nosql ),属于文档型数据库。先解释一下文档的数据库,即可以存放xml、json、bson类型系那个的数据。这些数据具备自述性(self-describing),呈现分层的树状数据结构。数据结构由键值(key=>value)对组成。
存储方式:虚拟内存+持久化。
查询语句:是独特的mongodb的查询方式。
适合场景:事件的记录,内容管理或者博客平台等等。
架构特点:可以通过副本集,以及分片来实现高可用。
数据处理:数据是存储在硬盘上的,只不过需要经常读取的数据会被加载到内存中,将数据存储在物理内存中,从而达到高速读写。
成熟度与广泛度:新兴数据库,成熟度较低,nosql数据库中最为接近关系型数据库,比较完善的db之一,适用人群不断在增长。
优势:
快速!在适量级的内存的mongodb的性能是非常迅速的,它将热数据存储在物理内存中,使得热数据的读写变得十分快,
高扩展!
自身的failover机制!
json的存储格式!
缺点:主要是无事物机制!

三、参考文章

    1. https://baike.baidu.com/item/nosql/8828247?fr=aladdin
    2. https://blog.csdn.net/qq_38314823/article/details/80903405
    3. https://www.cnblogs.com/printn/p/7199928.html