本文目录导航:
比拟mongodb和mysql在存储结构化数据时的异同
1. MongoDB比MySQL快在它有Memory-Mapping以及它不用途理事物2. MySQL实用于传统的对关联需要高的方面,MongoDB更多用于Logging、SNS等以K-V居多的需求,然而两种数据库其实都能胜任大少数需求。
对MongoDB来说,关联普通是做成内联的,最大水平施展其长处。
而假设内联起来比拟纠结或许冗余太多处置费事的时刻当然用SQL更失当了3. 新名目可以思考用MongoDB 假设阅历无余而期间紧迫则可以继续用MySQL4. 总之适当的义务用适当的工具5. MongoDB有比拟好的扩大才干,可以很容易做成散布式架构6. 对MongoDB来说,内存越多越好
请问MongoDB和mysql哪个更好用?
MongoDB自身它还算比拟年轻的一个产品,所以它的疑问,就是成熟度必需没有传统MySQL那么成熟稳固。
瑭锦Tanjurd倡导在经常使用的时刻,第一,尽量经常使用稳固版,不要在线上经常使用开发版,这是一个大准则;另外一点,备份很关键,MongoDB假设出现一些意外状况,备份必定是要能跟上。
除了经过传统的复制的模式来做备份,离线备份也还是要有,不论你是用什么模式,都要有一个完整的离线备份。
往往最后出现了不凡状况,它能协助到你;另外,MongoDB性能的一个关键点就是索引,索引是不是能有比拟好的经常使用效率,索引是不是能够放在内存中,这样能够优化随机读写的性能。
假设你的索引不能齐全放在内存中,一旦出现随机读写比拟高的时刻,它就会频繁地启动磁盘替换,这个时刻,MongoDB的性能就会急剧降低,会出现动摇。
另外,MongoDB还有一个最大的缺陷,就是它占用的空间很大,由于它属于典型空间换期间准则的类型。
那么它的磁盘空间比普通数据库会糜费一些,而且到目前为止它还没有实如今线紧缩配置,在MongoDB中频繁的启动数据增删改时,假设记载变了,例如数据大小出现了变动,这时刻容易发生一些数据碎片,出现碎片引发的结果,一个是索引会出现性能疑问,另外一个就是在必定的期间后,所占空间会莫名其妙地增大,所以要活期把数据库做修复,活期从新做索引,这样会优化MongoDB的稳固性和效率。
在最新的版本里,它曾经在实如今线紧缩,预计应该在2.0版左右,应该能够实如今线紧缩,可以在后盾口头如今repair>用户数据库是用mongodb好还是用mysql好?
mysql更通用 假设不知道选什么就选mysql错不了. 而mongodb的存在更多的是关于mysql的一个细分需求畛域中的补充.比如在游戏行业中经常使用json格局的mongodb基本上可以满足一切数据结构的存储, 而且你再也不用由于扩大一个小配置而纠结新建一个表来存储 还是新建一个字段并用字符串来存储(每次读/写都要解析/序列化成字符串存储), mysql是不是特意傻笨粗, 而游戏基本上台面搭好框子前面写业务的时刻不时都是在做这些物品.