- 1、本文档共11页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
阿里巴巴Web2.0经济型数据库平台解密
阿里巴巴Web2.0经济型数据库平台解密
第1页:阿里巴巴Web2.0经济型数据库平台解密
第2页:体系架构介绍
第3页:新技术对数据库平台系统的支持
第4页:实验测试数据分析
基于IT产业不断涌现的各种崭新技术,以及阿里巴巴电子商务业务的不断快速发展,阿里巴巴和英特尔合作对于互联网应用中数据库的新型应用平台展开探讨和研究,开拓了全新的数据库平台,并最终成功部署到阿里巴巴电子商务平台应用环境中,展现了高科技推动互联网生产力的典型驱动力。
本文从架构角度分析几种新技术(Nehalem, Solaris, SSD)的特点,并能够把它们有机的结合起来,充分发挥各自的潜力,相互配合,统一到一个高效的组合中。同时,基于一些测试数据和真实的实际运营的情况,给出较令人信服的论据。最后,本文对将来的发展做进一步展望。
背景介绍
数据库系统的发展,特别是高端数据库,一直是小型机的天下。基于PC服务器解决方案成本低,但往往被认为单台系统性能不能满足大规模系统的要求,更主要的是系统的稳定性和可靠性常常为人诟病。
人脉通是阿里巴巴今年推出的电子商务领域的SNS平台,背靠阿里巴巴强大的交易平台和丰富的用户数目,其对性能的要求在规划时期就被明确地提了出来。同时,基于成本和可扩展性的考虑,阿里巴巴也打算尝试新的数据库平台系统架构,而不是单一的使用小型机。
阿里巴巴数据库平台的特点和业务
数据库系统是典型的IO密集型应用系统,其系统压力瓶颈最容易出现在IO操作方面。对于 Oracle 数据库,由于其优异的实现机制的设计,shared pool 的高效实现,大大降低了解析 SQL 语句所需要的资源。同时,对即使像 MySQL 这样没有 shared pool 机制的数据库,只要访问的数据稍微离散一些,性能瓶颈很快就会出现在 IO 操作上面了。当然,如果系统的访问集中在相对静止的少部分数据的话,瓶颈可能还是会出现在CPU以及其与内存的交互方面,但是这样的系统已经很稀少了。
随着 Web2.0 的流行,互联网信息量的增长简直可以用爆炸式来形容。而 此类Web2.0 类型的应用,由于用户交互性非常高,正是典型的高并发高离散的实时性数据请求类应用,自然就会给数据库带来直线上升的压力。
对于阿里巴巴这样的典型电子商务类型的网站应用,其实质可以被认为是较早涉及Web2.0的应用,也是非常典型的OLTP数据库应用。其最显著的特点就是每个事务处理单元都比较小,即每个事务请求涉及的数据量都很小,但是并发量非常高,而且要求响应时间要非常短。对应到数据库就是会产生大量的离散IO操作,这对于传统的机械硬盘来说无疑是非常致命的,因为硬盘的机械原理决定了离散的小IO请求会让大部分服务时间花在磁头寻道上面。所以,对于高并发的 OLTP 数据库系统,为了解决苛刻的 IOPS 量,不得不使用大量的机械硬盘,通过 RAID 技术将数据进行 strip 处理,来提高存储系统的并发 IO 处理能力,进而提高整个存储系统的 IOPS 能力,以满足前端应用对每次请求的响应时间要求。
另一方面,当传统大规模数据库的IO请求由昂贵的机械硬盘存储设备来满足的时候,处理器的压力也进而增加。现有的解决方案往往是寻求大型的服务器系统,包括多路的小型机等来满足。这样的方案也许能解决一时的需求,但在系统的可扩展性,针对阿里巴巴不断增长的业务数据需求来说,总是会达到瓶颈而无法顺利的满足要求。
最后,对数据库系统,特别是阿里巴巴这样的电子商务类系统,数据的安全性、一致性和可靠性是最重要的。现有的一些方案比如PC服务器配合Linux的方案,在操作系统本身以及文件系统上,确实在这方面要比小型机系统都要逊色。
阿里巴巴人脉通数据库体系架构
综合考虑以上因素,在阿里巴巴规划新的开放平台人脉通系统的时候,恰逢一些新技术的出现和成熟,我们为其推出了全新的体系架构:使用英特尔高性能SSD作为IO存储设备,运行在英特尔全新一代Nehalem服务器平台上,同时采用高可靠的Solaris作为操作系统。下面分别进行介绍。
体系架构介绍
新的体系架构完全基于开放式的PC Server硬件,使用英特尔最新推出的基于Nehalem平台的服务器,配备高性能的SSD磁盘作为存储设备。从软件上看,新架构选择了Solaris作为操作系统,而MySQL则作为最终的数据库软件。同时为了解决数据的高可用和可扩展性两大难题,使用了阿里巴巴自主研发的数据库中间代理层软件(Cobar),使得基于新架构的数据库平台达到了非常理想的状态。
人脉通系统的基本架构如下图所示:
图表 1 阿里巴巴人脉通架构
Cobar 通过数据的切分来解决数据库的扩展问题,不仅支持通过表名来进行垂直切分,还可以通
文档评论(0)