在具有MySQL与NoSQL的单个服务器上,Key-Value数据库是否存在高性能差异

发布时间:2019-07-11 发布网站:脚本之家
脚本之家收集整理的这篇文章主要介绍了在具有MySQL与NoSQL的单个服务器上,Key-Value数据库是否存在高性能差异脚本之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

在我的PHP应用程序中,我在一台服务器上的MySQL MyISAM分区表中有一个重达200GB的470M行表.用法包括70%写入/ 30%读取.
我正在努力提高性能.目前的主要问题是由于表级锁定导致的读/写争用.我试图在两个选项之间做出决定:

>将MySQL更改为Innodb.优点:避免表级锁定.缺点:更多的磁盘空间,需要更大的HD,可能没有这些快(目前使用RAID10 6 * 300GB SAS 15k).
>将数据移动到NoSQL数据库.主要内容:学习曲线.之前从未使用过NoSQL.

问题是,在尝试仍然避免分片数据的同时,并考虑到我使用RDMS MySQL作为简单的键值存储这一事实,两种方法之间的性能之间存在很大差异,还是NoSQL的主要优势在于转移到分布式系统?

最佳答案
我只能部分地回答你的问题,但希望不仅仅是评论.

MongoDB通常不是键值存储,并且在用作一个时已知具有某些性能命中.

MongoDb在这里也有一个锁定问题,可能会再次困扰你.它有一个DB级锁定atm,这意味着它可能(需要测试)导致写锁定饱和.

它也专为80%的阅读应用程序而设计(据说这是现在最常见的网站设置),因此您执行的写入越多,您会发现性能随着时间的推移而下降的越多.话虽如此,你可以调整MongoDB以使其更加友好,分布式特性确实有助于阻止写入锁定饱和度.

然而,我个人认为从SQL的MongoDB的学习曲线:

>接下来是null
>比SQL更自然,更简单地实现到我的应用程序中
>查询语言很简单,很容易掌握
>查询语言与SQL有很多相似之处
>驱动程序是标准化的,因此您在控制台中的JS驱动程序文档中看到的语法是一致的.

我对一般事项的个人意见是它的分布式概念.如果您获得了为键值存储设计的NoSQL解决方案,那么它可能非常好.谷歌的快速搜索在维基百科上搜索了一小部分NoSQL键值存储:http://en.wikipedia.org/wiki/NoSQL#Key-value_stores_on_solid_state_or_rotating_disk

总结

以上是脚本之家为你收集整理的在具有MySQL与NoSQL的单个服务器上,Key-Value数据库是否存在高性能差异全部内容,希望文章能够帮你解决在具有MySQL与NoSQL的单个服务器上,Key-Value数据库是否存在高性能差异所遇到的程序开发问题。

如果觉得脚本之家网站内容还不错,欢迎将脚本之家网站推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:76874919,请注明来意。

脚本之家官方公众号

微信公众号搜索 “ 程序精选 ” ,选择关注!

微信公众号搜索 “ 程序精选 ” ,选择关注!
精选程序员所需精品干货内容!

标签:cassandra