在设计系统时,很难在关系(RDBS)和非关系数据库(NoSQL)之间进行选择。 正确理解这两个局限性将使决策变得更加容易。
在深入研究NoSQL数据库之前,了解关系数据库的局限性很重要。 关系数据库已经存在了近40年,并且运行良好。 数据结构合理,记录保存在表中。 表由行,主键,唯一键组成,并且表可以相互连接。 它支持的另一个重要功能是事务,它的属性称为ACID。 ACID属性包含4个不同的属性,如下所述:
但是,随着大数据技术的发展,传统的基于SQL的数据库已不足以管理快速增长的数据量以及日益复杂的数据结构。 关系数据库的一些缺点如下:
我们对此有任何解决方法吗?
幸运的是! 我们有。
非规范化就是其中之一。 展开单个表并向其中添加更多列,以便在获取结果时避免连接。 这样可以提高读取性能,但会导致数据异常。
另一种技术是分片。 在这种技术中,可以对数据库进行分割,并将其存储在不同的服务器中。 这样可以提高读写性能,但是很难管理。
因此,总结一下。 关系数据库具有很多优点和缺点,我们可以解决它们,但是也带来了其他挑战。
NoSQL数据库自然允许对数据进行非规范化,可伸缩性和灵活的架构。 这些东西是免费提供的吗? 没有! 在这个世界上,没有什么是免费的。 放宽ACID限制。 尽管ACID对于某些应用程序是一个重要的约束,但对于所有应用程序却不是。 最后但并非最不重要的一点是,NoSQL数据库提供了一种查询大型和更复杂的数据结构的新方法,这在关系数据库中是不可能的。 这是使用NoSQL进行数据科学的关键因素之一。
NoSQL数据库的优点:
NoSQL数据库的一些示例是Redis,Dynamo,CouchDB,mongodb,Cassandra,HBase和Neo4J。 很多人在关系数据库中遇到许多不同的问题,这最终不足为奇,他们最终设计了不同类型的NoSQL数据库。
关系数据库和NoSQL这两个数据库在数据管理方面都很棒。 没有简单的答案哪个更好。 这完全取决于帮助人们根据上述参数及其权衡选择的要求。
数据库(Database)是按照 数据结构来组织、 存储和管理数据的建立在计算机存储设备上的仓库。
简单来说是本身可视为 电子化的文件柜——存储电子 文件的处所,用户可以对文件中的数据进行新增、截取、更新、删除等操作。
¥65.00¥180.00
¥29.90
¥199.00
¥199.00
¥798.00