从传统关系型数据库引擎到并行数据库引擎的演变过程

作者:禅与计算机程序设计艺术

1.简介

数据库一直都是企业级应用开发的基础设施,它提供了一系列的功能接口,能够帮助业务快速开发、部署和维护系统。作为关系型数据库的鼻祖,SQL语言在当时已经是互联网企业最主要的数据交互语言之一。随着信息技术的飞速发展和软件编程技术的革命性发展,关系型数据库也逐渐走向了“过时”的边缘。20世纪90年代,现有的关系型数据库如Oracle、DB2等都进入到了商用阶段,但是为了应对更复杂的应用场景,人们提出了一种新的数据库理论,即海量数据处理(big data)时代的关系型数据库不适合现状,因此需要新的数据库模型——NoSQL数据库。 NoSQL数据库在设计理念上吸收了分布式系统、云计算、大规模数据集、动态查询等多方面的特性,并且在功能实现上采用了分片机制、复制技术、主从集群等方式,并对关系型数据库的优化做了改进。同时,为了更好地利用海量数据,NoSQL数据库还提出了一种基于列存储、分布式文件系统的存储方案,使得数据可以横向扩展,增加了容错能力。目前市面上已经有许多知名的NoSQL产品,比如MongoDB、Cassandra等,这些数据库将在不久的将来改变传统关系型数据库的格局。

本文讨论的是NoSQL的代表性产品——Apache Cassandra的历史及其演变过程。 Cassandra是一个高可靠性、高可用性的分布式数据库,它的核心特征是通过复制技术实现数据高可用性,并且支持自动平衡和数据自动调度,有效地避免单点故障。但是,对于一个新生事物来说,很多人并不知道该如何选择数据库。因此,本文首先会介绍NoSQL的发展历程及其市场需求。然后再介绍Cassandra的设计理念、实现和关键技术。最后,通过实践案例进行相关的性能分析。整个过程中,我们将阐述NoSQL技术在大数据领域的重要意

猜你喜欢

转载自blog.csdn.net/universsky2015/article/details/132681700