NoSQL世界概览
1 引言
过去十年间,基于互联网的服务如电子邮件、博客、社交网络、搜索和电子商务等迅速发展,极大地改变了消费者的沟通、获取内容、分享信息和购买产品的方式。网络技术的进步让用户能轻松提供和消费各种形式的内容。例如,创建个人网页、开设博客并使其可被公众搜索,已成为全球用户都能享有的服务。如今,许多数据密集型且交互性强的应用,如Facebook、LinkedIn、Twitter等,拥有庞大的用户群体,因此让每个应用轻松实现高可扩展性和高可用性成为了终极目标。
长期以来,关系型数据库管理系统(RDBMS)被视为数据持久化和检索的通用解决方案。然而,随着对可扩展性的需求不断增加以及新应用需求的出现,传统RDBMS面临着新的挑战。在一些大规模网络应用中,人们对这种“一刀切”的方法感到不满。目前,构建企业级Web应用最常见的架构是三层架构,包括Web服务器层、应用服务器层和数据层。为了实现分布式数据管理中的可用性、可扩展性和性能提升,数据分区和数据复制是常用的策略。
当应用负载增加时,数据库层实现可扩展性有两种主要方式:
1. 纵向扩展 :分配更强大的机器作为数据库服务器。但这种方式成本高,且存在物理极限。
2. 横向扩展 :在多台机器上复制和分区数据。这种方式具有扩展性和经济性,符合云计算的按需付费理念。
近年来,新一代低成本、高性能的数据库软件NoSQL(Not Only SQL)应运而生,挑战了RDBMS的主导地位。不同的Web、企业和云计算应用对数据库有不同的需求,例如,高流量网站更注重可扩展性和高可用性。CAP定理和PACELC模型表明,在一致性、可
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



