设为首页 加入收藏

TOP

云计算下的数据库分析以及部分互联网公司目前采用的新型数据库总结(一)
2015-11-21 01:35:47 来源: 作者: 【 】 浏览:0
Tags:计算 数据库分析 以及 部分 互联网 公司 目前 采用 新型 数据库 总结

云计算下的新型数据库技术

?

摘要:在这个信息化的时代,我们的一举一动都离不开与数据打交道,特别是云计算和大数据时代的到来,使得传统数据库的性能已无法满足海量数据的实时交易查询需求,在性能和成本的双重压力之下,云计算下的数据库需要寻找突破之路。

?

1.简介:

云计算通过整合,管理和调配分布在互联网中的所有计算资源,以统一的界面同时向用户提供服务。互联网提供的各种计算形式的应用以及提供这些服务的数据中心和软硬件基础设施、提供的服务成为软件即服务(SaaS),数据中心的软硬件基础设施即为云,这种虚拟化资源提供计算的方式使得服务通过互联网传播,而用户不需要知道云计算服务的提供者和提供方式。因此,云计算具有规模大,可靠性高,用户透明,可扩展性强,提供按需服务和廉价等特点。而实现以上需求的前提条件就是云计算系统应该具备足够大的规模和处理能力,以满足大量的数据访问,数据存储和来自不同网络等额请求。

传统的关系型数据库虽然在数据存储方面占据着不可动摇的地位,但由于其天生的限制,越来越不能满足云计算下的数据扩展、读写速度、支撑容量以及建设和运营成本的要求。鉴于此,国内外知名的一些互联网企业Google、Facebook、Twitter、阿里、腾讯、百度等纷纷展开探索,自主研发新型数据库,这些企业有拥有众多的优秀人才,以及丰富的产品经验,所以对于新型数据库的探索成果在一定程度上也代表了当下云计算下数据库的最新的进展,所以本文主要先对与传统型数据库的优劣进行一些分析,接着介绍了现如今新型数据库的研究进展,对各类型数据库进行一些对比分析,最后在对于还存在的不足进行总结并对数据库的发展提出自己一些的看法。

2.背景:

2.1 云计算和大数据:

大数据是一种大规模数据的管理和利用的商业模式和技术平台的泛指,它不同于传统的海量数据,除了数据规模呈现几何级数增长的特征以外,还包括所有数据类型的采集、分类、处理、分析和展现等多个方面,从而最终实现从大数据中挖掘潜在巨大价值的目的。因此,大数据具有这4方面的特征:规模性(Volume)、多样性(Variety)、高速性(Velocity)和真实性(Veracity)。

云计算是一种基于互联网的计算方式,通过这种方式,共享的软硬件资源和信息可以按需提供给计算机和其他设备。能够像煤气、水电一样提供给信息时代的社会化服务,使用方便,费用低廉。云计算具有以下的特点:

(1) 超大规模。“云”具有超大的规模,Google云计算拥有100多万台服务器,Amazon、IBM、微软等的云均拥有几十万台服务器,正是这样拥有超大规模的“云”能够赋予用户前所未有的计算能力。

(2) 虚拟化。云计算支持用户在任意位置,使用各种终端获取应用服务。所请求的资源来自“云”,而不是固定的有形的实体。应用在“云”中某处运行,但实际用户无需了解、也不用担心应用运行的具体位置。只需要一台笔记本或者一部手机,就可以通过网络服务来实现我们需要的一切,甚至包括超级计算的任务。

(3) 高可靠性。“云”使用了数据多副本容错、计算节点同构可互换等措施来保障服务的高可靠性,使用云计算比使用本地计算可靠。

(4) 通用性。云计算不针对特定的应用,在云的支撑下可以构造出千变万化的应用,同一个云可以同时支撑不同的应用运行

(5) 高可扩展性。云的规模可以动态伸缩,满足应用和用户规模增长的需要。

(6) 按需服务。云是一个庞大的资源池,可按需购买,象自来水,电,煤气一样计费使用。

(7) 极其廉价。用于“云”的特殊容错措施可以采用极其廉价的节点来构成云,“云”的自动化集中式管理使得大量企业无需负担日益高昂的数据中心管理成本,“云”的通用性使资源的利用率较之传统系统大幅提升,因此用户可以充分享受“云”的低成本优势。

?

?

大数据着眼于“数据”,关注实际业务,提供数据采集分析挖掘,看重信息积淀即数据存储能力。云计算着眼于“计算”,关注IT解决方案,提供IT基础架构,看重计算能力,即数据处理能力,数据是两者之间最重要的联系,也是两者存在的意义,所以对于云计算和大数据时代,数据库技术的重要性也就不言而喻了。

2.2 云计算下的传统型数据库

随着web2.0的发展,传统的关系型数据库在应对超大规模和高并发的数据量和访问量时存在难以克服的问题:

(1)高并发读写速度慢

在数据量达到一定规模时,由于关系型数据库的系统逻辑非常复杂,使得其容易发生死锁等并发问题,导致其读写速度下降非常严重。

(2)支撑容量有限

对于数据量巨大的一些网站例如社交网站,每天海量的用户动态,累计下每月就能产生几亿条数据记录,对于关系型数据库,在这样一个具有数亿条记录的表中进行SQL查询,效率会是极其低下乃至不可忍受的。

(3)可扩展性差

在基于web的架构中,数据库是最难进行横向扩展的,当一个应用系统的用户量和访问量与日俱增的时候,传统的关系型数据库却不能像web service 那样简单的通过添加更多的硬件和服务节点来扩展性能和负载能力。对于很多需要提供不间断服务的网站来说,对数据库系统进行升级和扩展是非常痛苦的事情,往往需要停机维护和数据迁移,因此迫切需要关系数据库也能够通过不断添加服务器节点来实现扩展。

(4)建设和运维成本高

企业级数据库的价格很高,并且随着系统的规模增大而不断上升。高昂的建设和运维成本无法满足云计算应用对数据库的需求。

(5)对于分布式系统的制约

为了支撑更大的访问量和数据量,我们必然需要分布式数据库系统,然而由于传统关系型数据库的强一致性,就会使得分布式系统的延迟提高,因为网络通信本身比单机内通信代价高很多,这种通信的代价就会直接增加系统单次提交的延迟。延迟提高会导致数据库所持有时间变长,使得高冲突条件下分布式事物的性能不升反降,甚至性能距离单机数据库都还有明显的差距。面对这个难题,传统的关系数据库选择了放弃分布式的方案,因为在20世纪70-80年代,数据库主要被用来处理企业内的各类数据,面对的用户不过几千人,而数据量最多也就是TB级别。用单台机器处理事务,用个磁盘阵列处理一下磁盘容量不够的问题,基本就能解决一切问题。

然而,在大数据时代,云计算的数据量已然从TB级别变为了PB级别甚至更多,存在单点的单击系统无论如何努力,都会面对系统处理能力的天花板,原来的这条路就不能再接着走下去了。

2.3 几种云计算下的新型数据库及其实现原理

?

(1)NoSQL非关系型数据库

面对传统数据库出现的种种挑战,NoSQL是在新形势下出现的一种给关系型数据库的总称,它用全新的存储方式,减少了数据交互,减少了编写、调试的代码,对海量数据实现高效存储和高效访问,同时它的开源免费也降低了企业的运营成本。

NoSQL的主要特征为:

1)不需要预定义模式:不需要预定义数据模式,预定义表结构。数据中的每条记录可能有不同的属性和格式。当插入数据时,并不需要预先定义它们的模式。

2)无共享架构:相对于将所有数据存储的存储区域网络中的全共享架构。NoSQL往往将数据划分后存储在各个本地服务器上。因为从本地磁盘读取数据的性能往往好于通过网络传输读取数据的性能,从而提高了系统的性能。

3)弹性可扩展:可以在系统运行的时候,动态增加或者删除结点。不需要停机维护,数据可以自动迁移。

4)分区:相对于

首页 上一页 1 2 3 4 5 6 7 下一页 尾页 1/7/7
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇hbase-1.0.1安装 下一篇redis主从复制完整同步和部分重同..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: