本文是 Apache Cassandra3.X 系列的第一篇文章,主要介绍了 Cassandra 的出现原因,它解决了什么问题,3.X 版本对应的数据模型、数据副本方式、系统架构、客户端、应用工具发生了什么变化等内容。
关系型数据困局IMS 的全称是 Information Management System,1966 年由 Vern Watts 在 IBM 提出,最初是为了 Staurn V moon rocket 项目创造的,最终在 1968 年第一次产品发布,接下来再 CICS(Customer Information Control System)及其他的应用程序上获得成功,并沿用至今。
1970 年,Edgar F.Codd 博士发表了论文"A Relational Model for Data for Large Shared Data Banks",奠定了关系型数据库管理系统的功能基础。
那么,关系型数据库犯了什么错误?答案是:“Nothing” 。
为什么需要考虑替换关系型数据库?因为关系型数据库遇到了扩展问题,并且数据表之间的关联关系让查询越来越慢。
相关知识数据模型关系型模型是一个简单的模型,需要满足 ACID。ACID 是 Atomic、Consistent、Isolated、Durable 的简称。
所谓的弹性扩展是指特定属性的横向扩展能力,意味着集群内部可以无缝扩展和解散部分机器。要做到这一点,需要集群可以接收新的节点,并且通过拷贝部分或者全部数据的方式加入到集群,并开始接收新的用户请求,而不是需要大规模地调整或者配置整个集群。
与其他方案对比Cassandra 的类 Dynamo 特性有以下几点: