作者:禅与计算机程序设计艺术
1.简介
NoSQL(Not Only SQL)意为“不仅仅是SQL”,主要指非关系型数据库管理系统。NoSQL数据库的历史可以追溯到1997年的MySQL,2008年的CouchDB,以及2010年Google推出的Bigtable,最终演变成今天的分布式NoSQL数据库,如MongoDB、Redis等。随着互联网的发展,大数据应用越来越多,NoSQL数据库也越来越受欢迎。但同时,NoSQL又不是银弹,它也存在很多问题需要解决。比如性能问题、可扩展性问题、高可用问题、一致性问题、ACID特性支持情况差、开发语言没有统一标准等。因此,掌握NoSQL数据库并不是一件轻而易举的事情。
本文将介绍目前主流的NoSQL数据库技术: Cassandra、HBase、MongoDB、Reids、Memcached,并通过具体的例子加以阐述。希望能为读者提供更全面的学习思路。
2.基本概念术语说明
(1)CAP定理
CAP定理(Consistency、Availability、Partition tolerance),指的是一个分布式系统在同时满足一致性(Consistency)、可用性(Availability)和分区容错性(Partition tolerance)这