谈谈mongodb和mysql的认识

翻译 2018年04月15日 21:34:01

MySQL:关系型数据库

1、在不同的引擎上有不同 的存储方式。

2

分析一下Mysql和Mongodb应用场景

  • 1.如果需要将mongodb作为后端db来代替mysql使用,即这里mysql与mongodb 属于平行级别,那么,这样的使用可能有以下几种情况的考量: (1)mongodb所负责部分以文档形式存储,能够有较好的代码亲和性,json格式的直接写入方便。(如日志之类) (2)从data models设计阶段就将原子性考虑于其中,无需事务之类的辅助。开发用如nodejs之类的语言来进行开发,对开发比较方便。 (3)mongodb本身的failover机制,无需使用如MHA之类的方式实现。

  • 2.将mongodb作为类似redis ,memcache来做缓存db,为mysql提供服务,或是后端日志收集分析。 考虑到mongodb属于nosql型数据库,sql语句与数据结构不如mysql那么亲和 ,也会有很多时候将mongodb做为辅助mysql而使用的类redis memcache 之类的缓存db来使用。 亦或是仅作日志收集分析。

、查询语句是使用传统的sql语句,拥有较为成熟的体系,成熟度很高。

3、开源数据库的份额在不断增加,mysql的份额页在持续增长。

4、缺点就是在海量数据处理的时候效率会显著变慢。

Mongodb:非关系型数据库(nosql ),属于文档型数据库

什么是文档型数据库呢? 文档的数据库就是,即可以存放xml、json、bson类型系那个的数据。这些数据具备自述性(self-describing),呈现分层的树状数据结构。数据结构由键值(key=>value)对组成。

1、存储方式:虚拟内存+持久化。

2、查询语句:是独特的Mongodb的查询方式。

3、适合场景:事件的记录,内容管理或者博客平台等等。

4、架构特点:可以通过副本集,以及分片来实现高可用。

5、数据处理:数据是存储在硬盘上的,只不过需要经常读取的数据会被加载到内存中,将数据存储在物理内存中,从而达到高速读写。

6、成熟度与广泛度:新兴数据库,成熟度较低,Nosql数据库中最为接近关系型数据库,比较完善的DB之一,适用人群不断在增长。

优势:

  • 快速!在适量级的内存的Mongodb的性能是非常迅速的,它将热数据存储在物理内存中,使得热数据的读写变得十分快,

  • 高扩展!

  • 自身的Failover机制!

  • json的存储格式!

劣势:主要无事务机制

分析一下Mysql和Mongodb应用场景

  • 1.如果需要将mongodb作为后端db来代替mysql使用,即这里mysql与mongodb 属于平行级别,那么,这样的使用可能有以下几种情况的考量: (1)mongodb所负责部分以文档形式存储,能够有较好的代码亲和性,json格式的直接写入方便。(如日志之类) (2)从data models设计阶段就将原子性考虑于其中,无需事务之类的辅助。开发用如nodejs之类的语言来进行开发,对开发比较方便。 (3)mongodb本身的failover机制,无需使用如MHA之类的方式实现。

  • 2.将mongodb作为类似redis ,memcache来做缓存db,为mysql提供服务,或是后端日志收集分析。 考虑到mongodb属于nosql型数据库,sql语句与数据结构不如mysql那么亲和 ,也会有很多时候将mongodb做为辅助mysql而使用的类redis memcache 之类的缓存db来使用。 亦或是仅作日志收集分析。





浅谈个人对各种数据库的认识------通俗的个人话语-----阿冬专栏!!!

2015--5--21今天先来个华为的小新闻:物联网的LiteOS(开源的轻量级物联网操作系统)发布了,越来越感觉华为太牛了,抢占先机了,全球第一的通信设备商不是白做的,而且今天华为也发布了“敏捷网络...
  • zhangdong305
  • zhangdong305
  • 2015-05-21 22:31:24
  • 2094

认识线性表

简介 线性表是数据结构中最简单、最重要的结构形式之一,是最经常遇到的一种操作对象,在程序设计语言和程序设计中广泛使用。本章将系统地讨论其存储、运算及应用。 线性表的概念 1. 线性表的定义 ...
  • qq_21583681
  • qq_21583681
  • 2016-12-18 16:22:21
  • 165

谈谈对数据库的认识

数据库分无疑是用来存储数据的库,小的如exl表格,大点的access,更大点的如 mysql,sql,oracle,DB2等,现在社会流行的是oracl数据库,oracl数据库,虽然并不是讲比其他数据...
  • DCBTB
  • DCBTB
  • 2015-08-12 23:57:44
  • 801

谈谈对MVC的认识

MVC是模型(Model)、视图(View)、控制器(Controller)的英文首字母的缩写。 核心思想是:视图和用户交互,通过事件导致控制器改变,控制器改变导致模型改变或者控制器同时改变两者,模...
  • qq_38802291
  • qq_38802291
  • 2017-08-09 21:51:36
  • 199

谈谈对性能优化的看法,如何做?

从用户体验出发: 1、程序logging不要太长 2、相同数据不做重复获取 3、昂贵资源要重用(cell、sqlite、date) 4、良好的编程习惯和程序设计:选择正确的集合对象和算法来进行...
  • yuanyuan1314521
  • yuanyuan1314521
  • 2016-05-18 15:47:02
  • 270

谈谈对软件工程的认识

  • 2010年12月19日 20:40
  • 27KB
  • 下载

谈谈对HTML5的认识。

HTML5由W3C于2014年10月指定,旨在替换早期的HTML4.01和XHTML1.0标准,以适应互联网快速发展的需求。 优点: 1)多设备,跨平台; 2)用户体验好; 3)新标签的可读性...
  • michael8512
  • michael8512
  • 2017-09-04 23:00:48
  • 536

对思维导图的认识

在课堂上,老师给我们讲解了一种新的思维方式-思维导图。而关于思维导图,它的创始人是英国的大脑基金会总裁托尼.巴赞先生。思维导图是一种图示笔记方法,一种笔记工具,一种思考的利器,一种有效地思维模式,是一...
  • luoxl81
  • luoxl81
  • 2011-08-28 17:43:36
  • 1310

面试题-谈谈对java的认识

Java的基本认识 1、基本介绍 Java是一种跨平台的面向对象的开发语言。具有 简单性,面向对象,分布式,解释型,可靠,安全,平台无关,可移植,高性能,多线程,动态性等特点。 2、具体...
  • u011545779
  • u011545779
  • 2014-04-13 18:39:22
  • 3063

浅谈我对思维导图的认识

思维导图是由关键字组成的树状结构,这种结构更符合大脑认知,对信息进行解构和重构,就是加工分析后的重新认识。      这是本人画第一张导图,是第一次参加自考的时候画的,看到这张图大家可能会立马觉出它的...
  • YYZZHC999
  • YYZZHC999
  • 2016-07-04 10:10:44
  • 2620
收藏助手
不良信息举报
您举报文章:谈谈mongodb和mysql的认识
举报原因:
原因补充:

(最多只允许输入30个字)