这本书尽可能合理地把各章设计为独立的指南。对于一本关于Cassandra的书,这一点很重要,因为读者可能有不同的工作角色,身处不同的行业。借用软件领域的一个说法,这本书设计为是“模块化”的。如果你刚接触Cassandra,可以按顺序阅读;如果你已经过了入门阶段,也可以在后面的章节中找到你需要的内容,每一章都可以作为一个独立的指南。
第1章,这一章将回顾获得了极大成功的关系型数据库的历史,并介绍非关系型数据库技术(如Cassandra)的蓬勃兴起。
第2章,Cassandra简介
这一章介绍Cassandra,并讨论它有哪些让人激动和不同寻常的地方,它来自哪里,另外有哪些优点。
第3章,安装Cassandra
这一章会带着你安装和运行Cassandra,并尝试它的一些基本特性。
第4章,Cassandra查询语言
这一章介绍Cassandra的数据模型,重点强调它与传统关系模型的区别。我们还会讨论如何用Cassandra查询语言(CQL)表示这个数据模型。
第5章,数据建模
这一章介绍Cassandra中数据建模的原则和过程。我们会分析一个大家熟悉的领域,建立一个实际可用的模式。
第6章,Cassandra架构
这一章将帮助你了解读写操作时发生了什么,另外Cassandra数据库如何实现它的一些突出特点,如持久性和高可用性。我们会深入地理解一些更复杂的内部工作,如gossip协议、提示移交、读修复、Merkle树等。
第7章,设计使用Cassandra的应用
为了让Cassandra架构概念更为具体,我们将研究在现代云应用的架构和设计中结合Cassandra的一些常用方法。
第8章,使用驱动程序开发应用
面向不同语言有很多驱动程序,包括Java、node.js、Python、Ruby、C#和PHP,这些驱动程序对Cassandra的底层API提供了抽象。我们会帮助你了解如何利用常用驱动程序的特性用Cassandra开发应用。
Jeff Carpenter是DataStax的开发布道师总监,利用他在系统架构、微服务和Apache Cassandra等领域的工作背景,Jeff Carpenter着力帮助开发人员和运维工程师构建可扩展、可靠且安全的分布式系统。
Eben Hewitt是Sabre Hospitality的CTO和首席架构师,他负责技术战略,同时负责设计大规模关键任务系统,并领导团队构建这些系统。他曾任全球Q最ZZZ大酒店集团之一的CTO,另外曾担任过O’Reilly Media的CIO。