本文主要是介绍NoSQL浅谈,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
如今我们需要处理的数据越来越多,必须以商用的服务器集群来构建大型的硬件平台。NoSQL就应运而生了。它主张使用无模式的数据,可以运行在集群中。
NoSQL优点
- 应用程序的开发效率:以前我们需要花很大一部分的精力在内存数据结构和关系型数据的映射。NoSQL简化了数据交互。
- 大规模的数据:NoSQL为集群设计。
NoSQL发展迅速的原因
由于需要处理的数据越来越多,所以大型机的扩展方式,由原来单一计算机上的纵向扩展,转变为计算机集群上的横向扩展。NoSQL的一个重要特性,能够将内容密切相关的数据组织成一种丰富的结构(聚合),并显示的存储起来,以便作为一个单元来访问。
NoSQL领域中三种主要的数据模型
- 键值模型(key-value)
- 文档模型(document)
- 列族模型(column family)
聚合为许多应用提供一个自然的交互单元,既改善了集群的运行状况,又使得编写程序来访问数据库变得更为容易。
但同时也有缺点:难以处理位于不同聚合的实体之间的关系。从而引出了图数据库,它不属于面向聚合的NoSQL数据模型。
分布模型及一致性和持久性之间的仲裁
分别模型:分片和复制(主从复制或者对等复制)
关系型数据库,如mysql的中一致性和持久性分别指的是:
1. 一致性:一致性保证事务中的每个操作线程不可单独提交,成功则一起提交,不成功则事务回滚。
2. 持久性保证事务提交后数据会持久的保存下来。
这篇关于NoSQL浅谈的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!