CAP的崩溃
CAP猜想
可是NoSQL的基石。上图非常有意思,他从CAP,和数据库种类两个方向对NoSQL进行了分类。
Consistent, Available
(CA)
Systems
。在分布式方面有些问题,通常是通过复制来解决的。包括
- Traditional RDBMSs like Postgres, MySQL, etc (relational)
- Vertica (column-oriented)
- Aster Data (relational)
- Greenplum (relational)
Consistent, Partition-Tolerant
(CP)
Systems
。可用性上有问题但是在各节点数据保存一直。包括:
Available, Partition-Tolerant
(AP)
Systems
能够使用“最终一致性”保证一直。包括
射人先射马,擒贼先擒王。虽然CAP只是个经验性总结,但是反NoSQL的簇拥们免不了要对CAP先下毒手。
CAP的证明
。大体逻辑是如果要分布式,那么更新数据的时候,要么加锁(或其他技术)保证一致,要么不加锁保证可用;如果两个都想保证,就不能分布式了。可以看得出,这个证明很粗略,没有什么数学公式啥的。自然会被人钻牛角尖。
有人说,为什么一定要加锁才能保证一致?因为数据总是以串行的进入的,所以是一致的。如果保持数据不串行进入而且同时保证一致性呢?
数据的更新不是新数据替换掉旧数 据,就算是顺序发生错误,也是一致的。在实现上可以说是数据库有一个Agent可以以一种积极的态度来防止出现非一致更新。这种系统有如下特点:
- 支持事务,每个事物都是原子操作
- 在事务提交阶段可以发现不一致现象,并加以制止
- 事务提交算法支持分布式
我觉得也可以是一种新型的数据结构实现。
所以CAP应该称为SAP
上面这段文字是从理论层面的反驳,尽管看起来头头是道。。。。说不定是个好想法,可以试一试。比如将数据库日志化,或者根据数据修改操作的唯一ID,来识别先后。再仔细想想,说不定挺有意思的。
RDBMS不具备可扩展性的谎言
刚刚的言论是对NoSQL的攻击,这里则是自保了。
可扩展性是什么?可扩展性是不是要扩展到九重天上太上老君的兜率宫?适合的才是最好的,NoSQL的适用情况并不是太多。
你不需要为了NoSQL花费100万美元。一个中级的Dell服务器就可以满足这个世界上绝大部分的应用了。只要你的应用不是Twitter和
Facebook.你可以将这些4核的服务器连起来,形成一个24核的,128GB内存的运算能力,只有$15,000。这已经强大到应付绝大部分应用
了。
那些NoSQL簇拥诽谤着RDBMS不具备的扩展性,其实是徒劳的。RDBMS的扩展性实用的,不是无限的。
感觉商业机密比计算能力值钱。风云莫测啊。
引用:
Getting_Real_about_NoSQL_and_the_SQL_Isnt_Scalable_Lie
Brewer’s CAP Conjecture is False
visual-guide-to-nosql-systems
http://www.yankay.com/nosql%E7%9A%84%E7%9C%9F%E7%9B%B8%E5%92%8C%E8%B0%8E%E8%A8%80/
- 大小: 170.1 KB
分享到:
相关推荐
NoSQLBooster for MongoDB是一款强大的管理工具,专为优化MongoDB操作而设计,其前身为Mongobooster,是开发人员和数据库管理员进行高效数据库管理和维护的理想选择。 NoSQLBooster提供了一系列功能,旨在提升...
NoSQL是什么? 为什么使用NoSQL? 为什么使用NoSQL? NoSQL的分类 NoSQL有什么特点? NoSQL有什么特点? NoSQL是否完美? NoSQL的一些概念——CAP NoSQL的一些概念——ACID NoSQL的一些概念——BASE NoSQL的一些概念...
《NoSQL研发之路:从历史发展到特殊领域应用》 一、NoSQL概念与分类 NoSQL,全称为“Not Only SQL”,意在强调数据库不仅仅局限于传统的SQL关系型数据库,而是涵盖了一系列非关系型数据库技术。NoSQL数据库的出现...
NoSQL数据库 14信管一班2组23殷月园 NoSQL数据库PPT全文共20页,当前为第1页。 内容大纲 定义 产生 共同特征 分类 适用场景 发展现状 7 挑战 NoSQL数据库PPT全文共20页,当前为第2页。 一.什么是NoSQL数据库? NoSQL...
NoSQL 数据库是当前大数据时代的热门话题,NoSQL 数据库学习之路是 NoSQL 数据库的详细介绍,介绍了目前主流的 NoSQL 数据库实现原理,涵盖了 CAP 理论、 BASE 理论、一致性哈希、 Vector Clock、Gossip Protocol 等...
nosqlbooster4mongo-4.5.4 NoSQL Manager for MongoDB Pro
NoSQL(Not Only SQL)是一种非关系型数据库技术,它在大数据处理、分布式系统和实时应用等领域中扮演着重要角色。这个打包文档包含了关于NoSQL的一些关键知识点,旨在帮助理解和开发人员深入掌握这一技术。 1. **...
根据提供的信息,我们可以推断出该文档主要围绕“NoSQL数据库入门”这一主题展开,并且它是一本高清PDF格式的学习指导书籍。尽管文档的部分内容似乎与Linux公社网站介绍有关,但我们的重点将放在提取与NoSQL数据库...
《Professional NoSQL》这本书深入探讨了非关系型数据库(NoSQL)这一现代数据存储技术的领域。NoSQL一词最初由Carlo Strozzi在1998年提出,意为“非只读型数据库”,后来演变为“Not Only SQL”,以强调其不仅仅是...
NoSQL数据库技术发展趋势 NoSQL数据库技术发展趋势是当前数据库技术发展的热点。近年来,NoSQL数据库技术获得了高速发展,许多企业和机构都在投入巨资来开发和应用NoSQL数据库技术。阿里云作为中国软件行业的领导者...
《NoSQL精粹》这本书是NoSQL数据库领域的经典之作,旨在深入探讨非关系型数据库的原理、设计与应用。NoSQL(Not Only SQL)的概念在21世纪初随着大数据时代的到来而兴起,它打破了传统的关系型数据库模型,为处理...
本书由浅入深,全面系统地介绍了NoSQL系统。本书既对NoSQL系统的理论进行了深入浅出的分析,又介绍了每一种NoSQL数据库在业界广泛应用的一个具体系统,理论与实战并重。 本书共分5篇,12章。涵盖的内容有:NoSQL与...
MongoDB 4.0 客户端工具NosqlBooster是一款专为MongoDB数据库设计的强大图形用户界面(GUI)工具,适用于管理和操作MongoDB数据库。NosqlBooster提供了直观的界面,使得对MongoDB的数据查询、编辑、管理变得更加便捷...
nosqlbooster4mongo-8.1.0
【Nosql:非关系型数据库的魅力与应用】 在IT领域,NoSQL(Not Only SQL)是一种不同于传统的关系型数据库的数据存储解决方案。它以其灵活、可扩展性和高性能的特点,尤其是在大数据和分布式系统中,逐渐获得了广泛...
Oracle NoSQL数据库是一款分布式键值存储系统,由Oracle公司提供,专为大数据处理设计,具有高可用性、可扩展性和高性能的特点。这个压缩包文件包含了关于Oracle NoSQL的安装、管理、开发和维护的精品资料,是学习和...
1、NoSQL技术介绍 1.1、NoSQL是什么 1.2、NoSQL为什么会存在 1.3、NoSQL产品分类 1.4、NoSQL技术的特点 1.5、NoSQL技术的不足 1.6、NoSQL的适用场景 2、一些概念 2.1、CAP 2.2、ACID 2.2、BASE 3、常见NoSQL介绍 ...