加入收藏 | 设为首页 | 会员中心 | 我要投稿 东莞站长网 (https://www.0769zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

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

发布时间:2021-03-05 18:48:12 所属栏目:MySql教程 来源:网络整理
导读:在我的PHP应用程序中,我在一台服务器上的MySQL MyISAM分区表中有一个重达200GB的470M行表.用法包括70%写入/ 30%读取. 我正在努力提高性能.目前的主要问题是由于表级锁定导致的读/写争用.我试图在两个选项之间做出决定: 将MySQL更改为Innodb.优点:避免表

在我的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

(编辑:东莞站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读