浅谈mongodb,mysql的区别和具体应用场景[通俗易懂]

浅谈mongodb,mysql的区别和具体应用场景

大家好,又见面了,我是全栈君。

MySQL

关系型数据库。

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

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

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

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

Mongodb

非关系型数据库(nosql ),属于文档型数据库。先解释一下文档的数据库,即可以存放xml、json、bson类型系那个的数据。这些数据具备自述性(self-describing),呈现分层的树状数据结构。数据结构由键值(key=>value)对组成。

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

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

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

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

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

成熟度与广泛度:新兴数据库,成熟度较低,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来使用。亦或是仅作日志收集分析。

浅谈mongodb,mysql的区别和具体应用场景[通俗易懂]

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

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/111969.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Java Integer类型比较问题

    Java Integer类型比较问题JavaInteger类型比较问题【强制】所有整型包装类对象之间值的比较,全部使用equals方法比较。说明:对于Integervar=?在-128至127范围内的赋值,Integer对象是在IntegerCache.cache产生,会复用已有对象,这个区间内的Integer值可以直接使用==进行判断,但是这个区间之外的所有数据,都会在堆上产生,并不会复用已有对象,这是一个大坑,推荐使用equals方法进行判断。—-阿里巴巴Java开发手册抱着探索的精神我们来看

    2022年7月16日
    25
  • mac怎么装linux双系统_双系统linux和windows

    mac怎么装linux双系统_双系统linux和windows第一步:格式化U盘第二步:下载系统,这里我选择的是基于manjaro第三步:将iso镜像转成dmg格式第四步:写入镜像第五步:分空间第六步:关闭OSX的-SIP保护第七步:安装refind第八步:重启按住option键安装系统第九步:重启查看结果第一步:格式化U盘第二步:下载系统,这里我选择的是基于manjaro第三步:…

    2022年9月28日
    0
  • netty 书籍_pdf怎么把书签变成目录

    netty 书籍_pdf怎么把书签变成目录Netty权威指南第2版带书签目录完整版下载地址:https://pan.baidu.com/s/12h96bKAdKEGXHdqOskK3nw扫码下面二维码关注公众号回复100019获取分享码本书目录结构如下:第1章Java的I/O演进之路1.1I/O基础入门1.2Java的I/O演进1.3总结第2章NIO入门2.1传统的BIO编程2.2伪异步I/O编程2.3NIO编程2.4AIO编程2.54…

    2022年10月2日
    4
  • ProgressDialog使用总结

    ProgressDialog使用总结

    2021年12月9日
    36
  • java 代码中sql模糊查询Like拼接

    java 代码中sql模糊查询Like拼接Like模糊查询拼接:StringBuilderstringBuilder=newStringBuilder();stringBuilder.append(“selectu.*fromepai_sys_useru”);//写?是可以的是没问题的stringBuilder.append(“whereu.display_nameLikeconcat(‘%’,…

    2022年6月1日
    134
  • Netty权威指南(第2版) pdf百度网盘下载「建议收藏」

    Netty权威指南(第2版) pdf百度网盘下载「建议收藏」链接:https://pan.baidu.com/s/1DfxG9qKU2fshi6ha1a8NkA提取码:bmt4

    2022年10月3日
    3

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

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