资料库 什么是nosql? -技术百科的定义

什么是nosql? -技术百科的定义

目录:

Anonim

定义-NoSQL是什么意思?

NoSQL是一类数据库管理系统(DBMS),它不遵循关系DBMS的所有规则,并且不能使用传统的SQL查询数据。 当解释为“无SQL”时,该术语有些误导,并且大多数将其翻译为“不仅SQL”,因为这种类型的数据库通常不是替代品,而是RDBMS和SQL的补充。

基于NoSQL的系统通常用于超大型数据库,由于SQL的限制和数据库的关系模型,这种系统特别容易出现性能问题。 许多人认为NoSQL是随Web需求扩展的现代选择数据库。 NoSQL的一些著名实现是Facebook的Cassandra数据库,谷歌的BigTable和亚马逊的SimpleDB和Dynamo。

Techopedia解释了NoSQL

NoSQL数据库不一定遵循管理关系数据库中事务的严格规则。 这些违反的规则以缩写ACID(原子性,一致性,完整性,耐久性)为人所知。 例如,NoSQL数据库不使用固定的架构结构和SQL连接。

在传统的RDBMS中,基本操作是读写。 可以通过将数据复制到多台计算机来缩放读取,从而平衡读取请求的负载。 但是,这会影响写入,因为必须保持数据一致性。 通过分区数据可以缩放仅写操作。 这会影响读取,因为分布式联接通常很慢且难以实现。 此外,要维护ACID属性,数据库必须锁定数据。 这意味着当一个用户打开一个数据项时,任何其他用户都不能对同一项目进行更改。 此限制严重影响性能。

这些限制在过去并不是主要问题。 但是,随着社交网络和大数据的到来,涌现出的大量海量数据库被迫为全球数十万甚至数百万的客户提供服务,每分钟有数千次读写。 传统的RDBMS根本不能满足此需求,因为它们只能“扩展”或增加中央服务器上的资源。 另一方面,NoSQL实现可以“扩展”或在更多服务器之间分配数据库负载。

NoSQL数据库专注于特定类型的问题-从更灵活地存储数据(文档存储)到针对用例(如关系)(图形数据库)和聚合数据(列数据库),或者只是简化数据库的概念存储值的东西(键/值存储)。

与RDBMS相比,NoSQL数据库具有快速可伸缩性,更好的性能以及更简单的结构的优点。 但是,它们还受到相对较新且未经验证的技术的困扰,并且无法提供RDBMS丰富的报表和分析功能。

此定义是在数据库的上下文中编写的
什么是nosql? -技术百科的定义