国内最专业的IT技术学习网

Mysql数据库

当前位置:主页 > Mysql数据库 >

银河官网:NoSQL究竟是什么?了解为什么NoSQL数据库不是传统数据库的对手

发布时间:2019/09/11标签:   数据库      SQL      NoSQL    点击量:

原标题:银河官网:NoSQL究竟是什么?了解为什么NoSQL数据库不是传统数据库的对手

示例: MongoDB,CouchDB

通过阅读这篇文章,你会发现本章扩展的不仅仅是优势之一。这不是阻止使用NoSQL的方法。本章将对NoSQL技术的所有限制进行公正的描述,并且只是想让您了解使用它们时可能遇到的每个问题。许多要点可能会因实施而有所不同(即,当我说支持的工具很少时,大多数工具都适合,但并非所有工具都适用),因此请将它们视为一个概述,提醒您可能存在的风险找。我期望的是,在您选择使用NoSQL产品之后,您可以使用本章作为核对表来了解您的特定数据库中是否存在此问题以及它是否与应用程序相关。

【编辑推荐】

此外,虽然有许多商业工具可以连接到传统数据库来管理分析部分,但对NoSQL系统的支持有限。

示例: Redis,Cassandra,MemcacheDB

目标:异构数据,面向工作,敏捷开发

作为服务的应用程序可以在Web上发布

只是为了解释我所说的内容,当有一个页面进行查询并返回数据时,请参考示例中的极限情况。假设此页面使用传统数据库获取结果为500毫秒,使用NoSQL为50毫秒,渲染页面为200毫秒,通过互联网传输数据为1秒。DB层的性能提升为-90%,但对于最终用户,1700只增加了450ms,因此只有26%。通过这个例子,我会解释说很难衡量复杂系统的改进,在很多情况下,NoSQL还不足以解决性能问题。更直接的是,如果您考虑解决因迁移到NoSQL的应用程序中的设计不良而导致的性能问题,那么您就没有走上正确的道路。

目标:以键值形式存储数据

另一方面,在NoSQL世界中,存在更多混乱。每个供应商实现其特定语法,而不涉及任何共享标准。这意味着在不同的NoSQL实现之间迁移应用程序更加困难。这意味着找到一个熟悉许多NoSQL技术的程序员更难。

更少的工具

SQL不适合存在问题,因此您不必使用它来启动大数据项目。这将是试图用汽车而不是飞机到达岛屿。但SQL仍然有其优势。许多数据模型最好表示为相互引用的表的集合。这就像试图用飞机去买牛奶一样。NoSQL数据库不是SQL的替代品,但它们是替代品。

什么时候我应该使用NoSQL Db?

缺少供应商技术的标准

说实话,谨慎,当以下所有陈述都成立时,NoSQL是最佳解决方案:

当您的应用程序需要适合数据库目的时(即您在图表和数据库中保存数据)

我必须提到一些NoSQL实现,比如FoundationDB,允许类似ACID的事务保持NoSQL性能高。顺便说一下,当我们继续使用NoSQL时,数据一致性仍然是一个关键部分:基于您正在开发的应用程序,这可能是一个问题。

为数千名用户而非公司内部的少数人提供的应用程序

很明显,虽然这个功能有可接受的开销,但这没关系,可能是最好的选择。但什么时候它减慢了一切或需要太多的硬件?这个问题允许NoSQL开发人员声称缺少JOIN到一个功能,但NoSQL始终是解决方案吗?

但是,我的意思是“要求”?这里有一组NoSQL旨在支持的案例。

版权信息Copyright © 银河官网 版权所有    ICP备案编号:鲁ICP备09013610号