【问题标题】:SQL vs NoSql databases (Cassandra) [duplicate]SQL 与 NoSql 数据库(Cassandra)[重复]
【发布时间】:2015-03-09 01:19:55
【问题描述】:

我试图了解关系数据库(传统 mysql)和 nosql 数据库(cassandra 是候选数据库)之间的区别。我对 mysql 有一些经验,所以我安装了 cassandra,并查看了 CQL(cassandra 查询语言),它看起来与传统的 sql 数据库非常相似。

键空间类似于数据库 列族类似于表 cassandra 中的行和列与 sql 数据库中的相同。

那么这里唯一的区别是没有外键吗?这就是 nosql 数据库可扩展且速度更快的原因?

【问题讨论】:

  • 我认为阅读 google.com/… 会有所帮助。
  • 在所有不同的数据库技术中,通常归类为“NoSQL”这个巨大的包罗万象的标签,Cassandra 是最类似于 SQL 的技术之一。当您想拓宽视野时,您可能需要研究面向文档、面向图形或面向键/值的数据库系统。

标签: sql cassandra database nosql


【解决方案1】:

根据我的经验,主要区别在于架构很少/没有架构(取决于 NoSQL 变体)和横向扩展(分布在多个地理位置)。

这是一些很好的高级比较数据( http://www.nosql-vs-sql.com/):

  • ISO/IEC 标准 - NoSQL:否,SQL:是
  • 定义明确的概念 - NoSQL:否,SQL:是
  • 成熟 - NoSQL:否,SQL:是
  • 很好理解 - NoSQL:否,SQL:是
  • 扩大规模 - NoSQL:是,SQL:是
  • 向外扩展 - 无 SQL:可能(有些天生就是为向外扩展而构建的),SQL:可能

此图也是可视化差异(一致性、可用性、分区)的好方法,即使在 NoSQL 变体之间也是如此: http://www.researchbeta.com/wp-content/uploads/2011/08/CAP-11.png

【讨论】:

  • 虽然此链接可能会回答问题,但最好在此处包含答案的基本部分并提供链接以供参考。如果链接页面发生更改,仅链接的答案可能会失效。
  • 好点,我会编辑谢谢!
  • “nosql-vs-sql”网站并不是很有用,因为它将大量具有完全不同用例和设计目标的根本不同的数据库技术归为一个包罗万象的标签“NoSQL” ”。将 SQL 与 NoSQL 进行比较就像将“汽车运输”与“无汽车运输”进行比较,后者试图将船舶、飞机、火车、飞艇、直升机和自行车都归为一个类别。
  • 此外,该网站正在尝试宣传基于 SQL 的软件解决方案(请参阅页脚 " SQL 是查询数据库的最佳语言。[我们的产品] 是查询数据库的最佳方式)用Java写SQL。”),所以他们没有公正的观点。将产品与竞争对手进行比较的广告很少是好的参考来源。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-12-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多