一、云数据库概念 云数据库是在 SaaS(software-as-a-service:软件即服务)成为应用趋势的大背景下发展起来的云计算技术,它极大地增强了数据库的存储能力,消除了人员、硬件、软件的重复配置,让软、硬件升级变得更加容易,同时也虚拟化了许多后端功能
云数据库具有高可扩展性、高可用性、采用多租形式和支持资源有效分发等特点
可以说,云数据库是数据库技术的未来发展方向
目前,对于云数据库的概念界定不尽相同,主要有: 云数据库即CloudDB,或者简称为“云库”
它把各种关系型数据库看成一系列简单的二维表,并基于简化版本的SQL或访问对象进行操作
[1] 云数据库定义是:云数据库是部署和虚拟化在云计算环境中的数据库
[2] 云数据库解决了数据集中与共享的问题,剩下的是前端设计、应用逻辑和各种应用层开发资源的问题
使用云数据库的用户不能控制运行着原始数据库的机器,也不必了解它身在何处
如图 1 所示,在云数据库应用中,客户端不需要了解云数据库的底层细节,所有的底层硬件都已经被虚拟化,对客户端而言是透明的
它就像在使用一个运行在单一服务器上的数据库一样,非常方便、容易,同时又可以获得理论上近乎无限的存储和处理能力
二、云数据库的特性 云数据库具有以下特性:[3] (1) 动态可扩展:理论上,云数据库具有无限可扩展性,可以满足不断增加的数据存储需求
在面对不断变化的条件时,云数据库可以表现出很好的弹性
例如,对于一个从事产品零售的电子商务公司,会存在季节性或突发性的产品需求变化;或者对于类似 Animoto 的网络社区站点,可能会经历一个指数级的增长阶段
这时,就可以分配额外的数据库存储资源来处理增加的需求,这个过程只需要几分钟
一旦需求过去以后,就可以立即释放这些资源
(2) 高可用性:不存在单点失效问题
如果一个节点失效了,剩余的节点就会接管未完成的事务