
计考虑到了这些新的需求。
但是,我的意思是“要求”?这里有一组NoSQL旨在支持的案例。
-
该应用程序使用大量数据(大数据)
-
该应用程序使用快速更改关系和数据类型(半结构化,非结构化和多态数据)的数据。
-
开发人员使用敏捷方法在一个小团队中工作:针对长期瀑布迭代的许多小冲刺
-
作为服务的应用程序可以在Web上发布
-
为数千名用户而非公司内部的少数人提供的应用程序
-
对应用程序的未来负载一定不确定:需要具有可扩展性和动态性,需要轻松地在后端集群上使用基础软件
市场上提供了许多NoSQL解决方案,无论是开源还是非开源。它们中的每一个都有所不同,可能专门针对某些特定需求,但基本思想和共同特征是提供更好的可扩展性和性能。为此,他们放弃了通用RDBMS的一些功能,引入了新功能,但保留了足够的功能。
NoSQL实现
SQL DB的一个重大变化是SQL后端是一个通用存储系统,NoSQL分发专注于特定类型的数据。这允许DB在其范围内更有效,并允许我们拥有更高性能的系统。在本节中,我们将讨论NoSQL数据库的应用程序。请注意,它们可以一起使用(也可以与传统的SQL系统一起使用),以便从不同的技术中获得最佳效果。
文档导向
这种类型的数据库不需要具有一致的数据结构,因此当您必须处理多态数据或数据结构不断变化时,它们非常有用。这种后端可以将标准化实体(如键值数据集或EAV模型)转换为简单的文档集。
-
目标:存储非类型的“记录”集,称为“文档”
-
示例: MongoDB,CouchDB
-
目标:异构数据,面向工作,敏捷开发
图数据库
我们被告知NoSQL数据库已经删除了关系的概念以实现更好的性能。在这种DB中,这不是真的。相反,图形数据库强制执行关系概念。
他们的目标是通过与其他数据的关系来定义数据。当大多数数据结构被设计为保持与实体的关系时(即,当存在大多数外键列时,如果有很多表),这种数据库可能很有用。
(编辑:平顶山站长网)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|