阿里双十一数据库技术

2 26th, 2014 | Posted by jacky | Filed under 大话技术

真的很抱歉,我的博客已经很久没有更新了,因为花了太多的时间在微博和微信上,当然最主要的原因还是工作实在太忙了,仅剩的那点业余时间都用来陪娃了。

从2012年开始,工作重心转移到了淘宝和天猫,我的技术方向也发生了改变,2012年和2013年,经历了两次双十一,在这个过程中学到了很多东西。尤其是2013年的双十一,系统准备的非常充分,技术上有很多创新,团队也得到了成长。

这篇文章是我为《程序员》杂志双十一特刊写的一篇文章,介绍了阿里数据库的核心技术

前言

大家都知道,双十一的零点高峰给系统带来的压力,尤其是数据库,作为整个交易系统最核心的组成部分,数据库的性能直接决定了整个系统的稳定性。

阿里巴巴(淘宝和天猫)的核心系统全部运行在PC服务器和MySQL数据库上,通过数据水平拆分实现了非常高的扩展性和可用性, 数据库的容量已经不再是系统瓶颈。双十一最重要的工作就是根据业务的压力,准确评估出系统的容量。因为阿里数据库的规模非常大,数据库扩容也是一项艰巨的工作,必须有自动化工具才能完成。我们还准备了很多应急预案,来应对一些突发的情况,并且通过不断的演练,保证了出现问题时可以快速解决。AliMySQL是阿里内部的MySQL分支,我们根据业务场景,对MySQL做了多项改进。同时,阿里巴巴自主研发的OceanBase数据库,已经在多个核心应用上使用,在双十一中承担了非常重要的作用。

数据库容量

数据库的容量评估分为两个部分:评估业务对数据库产生的压力,数据库单机所能承载的容量,根据这两个值就可以计算出数据库集群的规模和水位。将业务指标换算成数据库的指标QPS(Query Per Second,本文中的QPS不仅包括查询,还包括插入,修改和删除等数据库操作)是一个非常复杂的过程,大致的思路是:首先按照业务指标评估每个应用接口的调用量,然后再根据不同的接口调用量计算出成数据库的指标QPS。

看似简单,实际情况要复杂得多。淘宝的系统非常庞大,系统间的调用关系非常复杂,要分析出每个应用接口调用数据库的QPS绝非易事。为了解决这个问题,在阿里内部有一套鹰眼(eagleeye)系统,可以监控应用接口的调用量,调用关系,以及每个接口访问数据库的QPS等。借助这套系统,我们就可以比较准确的估算出数据库的容量。大家可以看出,评估数据库的容量是自上而下进行的,所以,梳理应用的调用关系是非常重要的。

一般情况下,在应用层和数据库之间,还有一层Cache,所以在评估数据库的容量时,我们还要考虑Cache的命中率,以及Cache服务器宕机的情况。在双十一大促时,Cache承担了非常大的访问压力,一旦命中率下降或者宕机,将会给数据库带来巨大的压力。我们必须要考虑这种情况,但是过度考虑会浪费大量的机器资源。所以,从平衡的角度出发,我们会为数据库预留1-2台Cache服务器宕机的容量,最高不超过Cache集群的10%。

评估出业务指标对数据库的容量需求,我们还需要知道数据库单机所能承载的压力。我们采用的方法不是通过系统Load,CPU或IO利用率来评估的,而是直接模拟真实业务来进行压测,这样做的好处是更真实。因为不同的应用的模型是不同的,比如查询型、插入型、混合型、内存型、IO型等。还有很多因素会影响数据库的性能,比如:数据量大小,查询复杂度,是否有热点等。同时,机器的硬件配置也是不同的,CPU型号,内存大小,SSD还是磁盘都会显著影响数据库的水位。不同应用反映在系统上的瓶颈也不同,可能是CPU,也可能是IO,也可能是网卡。我们之前就曾经碰到某个数据库集群,CPU还很空闲,但是千兆网卡被打满的情况。所以根据真实的业务进行压测,可以最真实的反映出系统的瓶颈,系统的最短板决定了数据库的容量。

根据压测的数据,我们就可以计算出整个集群的总容量。举一个例子:某数据库集群共16台主机,单机的容量是4万QPS,那么整个集群的容量就是64万QPS。假设根据业务的指标,我们估算出双十一数据库的压力为48万QPS,那么该数据库集群的水位就是75%。根据这个思路我们开发了数据库容量平台(Database Capacity Platform),可以非常直观的了解数据库的水位信息,水位非常直观的反映出数据库是否超出了容量。一般我们认为75%是安全水位,水位超过75%则需要进行扩容。

数据库扩容

因为双十一和平时的压力存在非常大的差距,所以我们需要在双11前对数据库集群进行扩容,必须在一个月的时间内完成,这个工作量是非常巨大的。数据库按照业务分为很多个集群,每个集群内由很多台MySQL数据库组成,数据一般按照用户ID或商品ID水平拆分。数据库集群扩容的类型有两种:一种是读写分离,通过增加备库提供读服务来提升集群的能力;另一种是水平扩容,将数据重新分布,拆分到更多台服务器上,达到扩容数据库集群的目的。

第一种方式比较简单,但是因为数据库主备存在延时,只适用于对读一致性要求不高的场景。第二种方式需要重新分布数据,虽然比较复杂,但是理论上没有容量的限制,我们大部分的扩容都采用这种方式。

不仅要考虑扩容,还要考虑缩减。在双十一之后,为了保证不浪费机器资源,我们还要对集群进行缩减。如果是读写分离则比较简单,直接将备库下线即可,但是水平扩容的方式,集群缩减的成本非常高。而且,最困难的地方在于扩容和缩减不能影响业务,必须在线进行,同时要尽量自动化,解放DBA的生产力。

集群的扩容和缩减,我们依靠一套自动化系统(DBFree)来完成,DBFree是阿里内部为MySQL量身打造的自动化运维系统,能够快速资源快速分配、拆库拆表拆实例、扩容和缩减。

如果没有这套系统,要在这么短的时间内完成大量数据库的扩容几乎是不可能完成的任务。

数据库预案

应急预案就是为了保护应用或数据库制定的措施,预案分为降级和限流两种:降级是关闭某些不重要的功能,限流是控制进入系统的流量。对于不同的数据库,我们都有对应的应急预案,当发生压力超出数据库所能提供的容量时,我们可以通过预案来保护数据库,不至于发生雪崩(数据库超出容量,响应时间变慢,导致前端应用出现问题的连锁反应)的情况。

因为数据库是整个系统的最底层,数据库要依赖于上层的应用来保护,以前数据库本身是没有自我保护能力的。今年双十一,我们创新的提出了数据库的自我保护和限流功能,作为数据库的应急预案,极大提升了数据库的稳定性。同时,应用也可以感知到这个错误,并作相应的处理。

数据库新技术

AliMySQL是阿里内部的MySQL分支,不仅修复了很多bug,还根据业务场景,开发了很多新的特性,比如:并行复制,并发控制,自我保护等等。

并行复制:MySQL主备复制是单线程的,如果主库写入量比较大,备库就会产生延迟。如果备库需要提供读服务,延迟是不能接受的。并行复制就是为了解决这个问题而提出来的,并行复制将原来的单线程复制变为多线程复制,有效解决了主备延迟的问题。双十一,很多数据库的备库都提供了读服务,在主库写入压力很大的情况下,主备延迟非常低,并行复制功不可没。

并发控制:这个补丁主要是解决热点更新的问题,比如热点商品更新库存,秒杀,红包等场景。当同时大量更新数据库中的同一行时,就会产生大量的锁等待,数据库的性能就会急剧下降。比如:在极端情况下,并发更新同一行,MySQL的TPS会降低到1000以下。并发控制补丁的作用通过控制并发更新的数量,缓解了热点更新的锁争用问题。经过测试,使用并发控制补丁,并发更新同一行,MySQL的TPS可以稳定在5000左右。今年双十一,没有发生商品超卖的情况,并发控制补丁是幕后英雄。

自我保护:当数据库发现性能很差的SQL或者超出系统的容量时,数据库会进行自我保护,保证数据库的性能和响应时间,不至于持续恶化。数据库的自我保护是阿里巴巴数据库团队率先提出并应用到生产环境的,经历了双十一的检验,极大的提升了数据库的性能和稳定性。

OceanBase

OceanBase是阿里巴巴自主研发的可扩展的关系型数据库,实现了跨行跨表的事务,支持数千亿条记录、数百TB数据上的SQL操作。在阿里巴巴集团下,OceanBase数据库支持了多个重要业务的数据存储,包括收藏夹、直通车报表、天猫评价等。截止到2013年4月份,OceanBase线上业务的数据量已经超过一千亿条,机器总数超过了1000台,经历了多次双十一的考验。

OceanBase的特性包括:分布式,可动态扩展,支持事务,支持SQL,高可用等。它结合了数据库和NoSQL的优点,像NoSQL产品一样,用户不再需要关心数据如何拆分,分布式架构,可以动态扩展。同时,又像传统数据库一样,支持SQL,事务,可以保证强一致性。并且任何单点故障都不会影响可用性。它主要包括以下组件:UpdateServer,RootServer,ChunkServer,MergeServer:

相比较各种NoSQL产品,OceanBase更倾向于传统数据库,因为我们大部分的应用都需要强一致性,支持事务,SQL等特性,NoSQL产品无法满足需要。而OceanBase又提供了比传统数据库更强的扩展能力,用户不再需要关心数据的拆分规则,ChunkServer可以动态扩展。所以,OB是一个分布式的关系型数据库,而不是又一个NoSQL的产品。

OceanBase是阿里集团最重要的自主研发项目之一,我们还在不断加大投入,相信未来它会在阿里集团甚至外部发挥越来越重要的作用。

压测与演练

双十一系统的稳定性与充分的准备工作密不可分,准备环节中最重要的两个部分就是性能压测与预案演练。

双十一前,我们对每个数据库都进行了性能压测,我们自己开发了一个压测工具( MyTest)来模拟业务真实的压力,可以非常方便的对数据库进行压测。同时,我们还做了一项非常特殊也是风险很大的压测,我们会人为关闭系统中的Cache,这时业务的压力就会全部压在数据库上,这样做可以模拟缓存失效的场景,最真实地模拟出业务对数据库的压力。

另一项工作是预案演练,因为整个系统的应急预案非常多,今年双十一光数据库的预案就有两百多个。我们内部有一套系统对预案进行管理,并且在双十一前进行了多次预案演练,保证预案在紧急情况下是有效的,并且可以快速执行。比如应用降级,限流,数据库宕机,流量切换等预案,在双十一前都被多次演练过。“平时多流汗,战时少流血”,这个道理相信每个人都懂。

总结

双十一是一个庞大的系统化的工程,通过双十一,可以检验我们系统的稳定性,发现系统中的薄弱环节,并加以改进。

双十一就像是一次年终大考,对于数据库技术的发展和自动化运维工具都有巨大的推动作用,也是对团队组织和能力的一种考验。

只有经常打仗的队伍才有战斗力!

–EOF–

标签:

第二届AskHelloDBA数据库技术论坛

12 8th, 2012 | Posted by jacky | Filed under 大话技术

第二届AskHelloDBA数据库技术论坛又要和大家见面了,本次论坛的演讲嘉宾全部来自淘宝网DBA团队,内容都是日常工作中的实践和总结,非常有技术含量,现场还可以直接向他们提问,绝对不容错过。

主题一:《淘宝数据库软硬件优化》

演讲人:维西(吴学章)

内容:分享淘宝在大规模SSD集群下,DB如何有效发挥单机性能的方案和经验。涉及SSD选型,Flashcache,参数优化和资源隔离等。

主题二:《Troubleshooting MySQL》

演讲人:苏普(周振兴)

内容:介绍MySQL诊断工具tcprstat/orzdba/top/iostat,系统工具tcpdump/oprofile/perf top,以及MySQL Explain解决SQL性能问题。

主题三:《淘宝MySQL经典案例》

演讲人:应元(杨德华)

内容:淘宝MySQL经典案例第二季,每个案例背后都有一段故事,每个案例都是DBA经验的总结。

主题四:《双十一数据库的故事》

演讲人:胜通(陈招尚)

内容:淘宝双十一数据库的准备工作,资源评估,应急预案,还有不眠不休的24个小时的有趣故事。

报名方法:

发邮件到askhellodba@gmail.com报名,内容包括:姓名,单位,电话,email,支付60元至支付宝账号:askhellodba@gmail.com,付费采用自愿的原则。

时间地点:

2012年12月22日(周六),下午13:00-17:30,地点:福云咖啡(杭州市西湖区西溪路628号福地创业园5楼)。

交通路线:

天目山路紫荆花路与紫荆港路之间的雷克萨斯4S店旁边的小路向南约200米,自驾车或出租车可以直接开进去。

收费说明:

本论坛为非盈利性公益组织,为了尊重知识和演讲人,采用象征性收费的原则,用来支付场地费,购买图书和礼品等。

–EOF–

标签:

AskHelloDBA专业数据库技术问答社区

4 28th, 2012 | Posted by admin | Filed under 大话技术

众所周知,我在微博上开辟了一个AskHelloDBA专栏回答各种数据库问题,分享数据库最佳实践和研究成果。但是我一个人的能力有限,而我周围有很多技术牛人,所以我想打造一个数据库技术问答社区,集合社区的力量解答大家碰到的各种问题,大家可以互相交流技术,讨论人生和理想。

AskHelloDBA有别于传统的技术论坛,我们将其定义为技术问答社区,所以我们的定位更高端和小众一些,希望通过问答的形式,形成一个互助的平台,在这个平台上,大家互相交流技术,共同进步提高。

欢迎大家访问AskHelloDBA(askhellodba.com)!交流数据库技术,讨论DBA生涯!希望大家多多支持!

–EOF–

标签:

Exadata那点事

4 22nd, 2012 | Posted by jacky | Filed under 大话技术

这是我在第一届AskHelloDBA数据库技术论坛上的主题演讲:Exadata那点事,讲述你所不知道的Exadata细节。

我认为不管是否是Exadata的用户,不管是DBA还是架构师,都可以从Exadada的架构中学到很多东西,这也是为什么我一直研究它的原因。

PPT:Exadata那点事

–EOF–

标签: ,

第一届AskHelloDBA数据库技术论坛

4 5th, 2012 | Posted by jacky | Filed under 大话技术

即将于2012年4月21日举办第一届AskHelloDBA数据库技术论坛,现公布活动安排和报名细则如下:

活动议程:

9:30-9:40 活动介绍

9:40-10:20 《Exadata的那点事》

内容提纲:讲述你所不知道的Exadata架构,包括以下内容:
1.Exadata硬件体系架构
2.Exadata的杀手锏-offloading
3.Exadata Flashcache机制详解
4.HCC和StorageIndex的适用场景
5.Exadata实际测试数据分析

演讲人:张瑞,网名HelloDBA,阿里巴巴数据库架构师,Exadata技术爱好者。致力于推动Flash存储技术在数据库领域的应用,研究软硬件结合的数据库解决方案,乐于分享数据库领域的最佳实践和研究成果。

10:20-10:40 茶歇&交流

10:40-11:20 《Oracle RAC Dynamic Remastering机制详解》

内容提纲:
1.Cache fusion的几种场景
2.Block Mastering初始化过程
3.Dynamic Remastering机制
4.手工模拟Dynamic Remastering测试
5.避免Cache fusion的意义

演讲人:王英杰,阿里集团数据库专家,Oracle RAC技术爱好者。

11:20-12:00 《Exadata实战案例》

内容提纲:Exadata实战案例分析

演讲人:Oracle公司提供

12:00-13:00 午餐&交流

13:00-13:40 《我对后端优化的一点想法》

内容提纲:数据库基本的性能优化思路与常见的优化模式,涉及性能建模、数据分库分表、缓存设计、索引设计等。该主题曾经在2011年数据库技术大会上演讲过,受到广泛关注和好评。

演讲人:童家旺,支付宝数据库架构师,Oracle技术专家,关注研究数据库性能优化和应用架构改进,曾翻译《Oracle性能诊断艺术》一书。

13:40-14:40 自由交流时间

报名方法:

发邮件到freezr@gmail.com,标题注明AskHelloDBA数据库技术论坛,内容包括:姓名,单位,电话,email,职位。报名成功后,我们会发邮件确认报名成功。因为场地限制,只允许报名30人,所以我们不保证每个人都能报名成功。

收费规则

该活动为非盈利性质,收费只是支付场地和午餐费用,以及购买书籍和奖品。为了让活动能够持续举办下去,我们将为每位演讲者提供一份小礼品,感谢他们的辛苦付出。活动采用支付宝支付,暂定每人收费50元,收到确认邮件后,内有付款的支付宝账号。我们欢迎公司赞助本活动,第一届活动由Oracle公司提供赞助,感谢Jack Han的大力支持!

会议时间地点

2012年4月21日上午9:30,杭州福云咖啡,杭州市西湖区西溪路628号福地创业园5楼。

补充说明:

由于目前本活动只有我一个人组织,包括确定主题,联系场地,报名等等,所以肯定有很多不尽如人意的地方,希望得到大家的谅解和支持。如果有人愿意帮助我共同组织这个活动,我会非常感激。我已经为本活动申请了AskHelloDBA.com域名,以后会通过这个域名发布活动信息,即将上线,敬请期待。

–EOF–

标签:

Expert Oracle Exadata译者序

4 1st, 2012 | Posted by jacky | Filed under 大话技术

最近博客很少更新,一是沉迷于新浪微博AskHelloDBA,回答大家的数据库问题;二是与Kaya、Kamus共同翻译《Expert Oracle Exadata》这本书,最近书籍的翻译工作已经进入尾声,即将定稿并出版,以下是我的译者序。

译者序-Jacky

2008年,Oracle在OOW上发布了与HP合作开发的Exadata V1。当时,我就对Exadata充满了好奇,很快我就在自己的博客上写了第一篇介绍Exadata的文章《Oracle Database Machine》。现在看来,文章中很多观点都是错误和可笑的,但当时介绍Exadata的技术资料非常少,很多观点只能来自于猜测。从那时开始,我一直保持着对Exadata的关注,并在一次Oracle介绍Exadata新技术的会议上,认识了Kaya(本书的另外一位译者),这也为我们共同翻译本书埋下了伏笔。

2009年,Oracle发布了Exadata V2,它不仅采用了SUN的硬件,更是革命性地引入了Flash存储,并采用智能闪存(Exadata Smart FlashCache)技术,让Exadata同时支持DW和OLTP应用,成为真正全能型的数据库软硬件一体机。2010年2月1日,我在博客上发表了第二篇关于Exadata的技术文章《Oracle Exadata技术浅析》,引起了大家的热烈讨论,并被广泛转载。文章中介绍了Exadata的新特性,并且在没有资料提及的情况下,提出SmartScan应该只能在特殊访问路径下(直接路径扫描)才能启用的观点。从此以后,我对Exadata着了迷,无奈除了一些官方文档以外,几乎没有其他任何资料,而我又没机会亲身操作Exadata,只能通过各种途径了解Exadata的最新信息。

2010年,我参加了在北京举办的OOW大会,第一次近距离看到了Exadata的真面目,也更加深刻体会到“Hardware and Software Engineered to Work Together”这句话的真正含义。从此,我开始致力于推动Flash存储技术在数据库领域的应用,研究软硬件结合的数据库解决方案。2011年10月举办的OTN China Tour活动上,受ACOUG的邀请,我作了《软硬件结合的数据库解决方案》主题演讲,介绍了我们在软硬件结合方面的一些尝试,并且解读了Exadata和Oracle刚推出的ODA(Oracle Database Appliance)的架构,引起了非常大的反响。

2011年底,我终于等到了亲身体验Exadata的机会,Oracle提供一个Exadata V2 Quarter Rack供我们测试。我们根据在线交易网站的特点,专门设计了一个测试模型,并且先在高端的小型机和存储上进行测试,然后在Exadata上运行相同的测试,以此来评估Exadata和传统主机存储之间的性能差异。Exadata的表现让我们非常惊讶,性能完全超过了小型机和存储。Exadata使用FlashCache技术,在读多写少的应用场景下,表现超乎想象,不仅预热速度快,而且性能与将数据全部放在Flash上相差无几,提供了非常好的性能价格比。不仅如此,我们还特别模拟了存储节点宕机的情况,当某个存储节点宕机时,Exadata表示毫无影响,而且性能下降非常小。通过一周的测试,我们对Exadata高性能、高可用和高度灵活的特性有了更深的认识。

作为一名Exadata技术爱好者,一直苦于找不到一本深入介绍Exadata的书籍,直到偶然一次机会我发现了《Expert Oracle Exadata》这本书,本书的几位作者都是Oracle技术领域内的大师,之前我一直订阅他们的博客了解最新的Oracle前沿技术,几位大师合著,再看看内容简介,我知道它就是我期盼已久的那本书。当时这本书还没有完成,我找到出版社希望能在本书出版后第一时间拿到,没想到侠少不仅帮我拿到了书,同时也拿到了本书的版权,并且希望我能翻译这本书,我毫不犹豫地答应了,因为我已经期待了太长时间。但是当我读了一点又开始犹豫了,因为对于Exadata来说我只是个初学者,而且本书的技术含量非常高,凭我一己之力很难完成这项工作,我马上想到了两个人,一个是Kaya(黄凯耀),另一个是Kamus(张乐奕),Kaya来自于Oracle RealWorld Database Performance Group,专门研究Oracle和Exadata的性能优化,我相信国内没有人比他更熟悉Exadata。Kamus是国内知名的Oracle技术专家,Oracle ACE Director,他也是Exadata技术爱好者。事实证明,他们就是最合适的人。

虽然我以前也经常写文章,但是翻译书籍还是第一次,深深体会到翻译工作的艰辛。因为Exadata是业界最新的技术,翻译的过程也是学习的过程,很多技术都是第一次碰到,需要理解并准确表达出来,这对翻译者是个严峻的考验。我们三个人一起翻译和讨论,不知不觉过去了半年时间,来来回回发了几百封邮件,往往一个句子甚至一个词,都要讨论很多遍才能确定下来,正是在这样讨论的过程中,很多技术问题都被我们搞清楚了。我们坚信翻译不是简单的文字转换,一定要自己先搞清楚,才能翻译出来给大家。正因为如此,我们在翻译的过程中,也发现了原书中的很多错误,并且Kaya把我们发现的错误都整理出来发给了原书的作者,所以大家读到的应该是最新版本。

如果要说本书最难翻译的部分是什么,当属“Kevin说”,因为Kevin说的要不是“技术哲学”,要不就是“技术原理”,有时候我们读过几遍之后,还不知道他在说什么,我们已经尽可能翻译得通俗易懂,但是仍然有很多不完美的地方,请大家谅解。另外,因为Exadata的技术非常新,我们对难于理解的地方都加上了译者注,希望可以帮助大家。本书中出现的术语,我们都采用中英文对照的方式,也有一些常用的Oracle术语我们选择不翻译,因为英文比中文更容易理解。

最后,我要感谢家人对我的支持,尤其是我的爱人Emily和Michael小朋友,每天工作到深夜,回到家后看到你们熟睡的脸庞,觉得一切付出都是值得的。还要感谢和我一起战斗过的Kaya和Kamus,你们给了我太多太多的帮助。感谢原书的作者,正因为你们写了这样一本伟大的书籍,才有了现在的中文版本。最后感谢读者的支持和理解,希望你们喜欢这本书。

我翻译了本书第三、五、十、十四、十五以及附录部分。

张瑞

2012年4月1日于杭州

个人简介:

张瑞,网名HelloDBA,2005年加入阿里巴巴,现任数据库架构师,负责数据库性能优化与架构改进,主导推动了阿里巴巴数据库技术的变革。现致力于推动Flash存储技术在数据库领域的应用,研究软硬件结合的数据库解决方案。个人有技术博客HelloDB.net,乐于分享数据库领域的最佳实践和研究成果。

标签:

软硬件结合的数据库解决方案

10 24th, 2011 | Posted by jacky | Filed under 大话技术

最近参加了OTN China Tour技术嘉年华的活动,并准备了一个关于软硬件结合的主题演讲,介绍了我们在软硬件结合方面提升Oracle数据库性能和可用性的案例,后续我会详细介绍这些案例的架构与设计。

PPT:软硬件结合的数据库解决方案

–EOF–

感谢ACOUG,云和恩墨,Eygle和Kamus。

Oracle Database Appliance

9 27th, 2011 | Posted by jacky | Filed under 大话技术

Hardware and Software Engineered to Work Together

自从Oracle收购了SUN,不仅仅得到了MySQL,Java,Solaris等,还得到了SUN的硬件产品,真正成为了一家软硬通杀的服务提供商。这几年,接连推出了基于SUN的硬件产品打造的数据库一体机Exadata X2,中间件一体机Exalogic等等,更是将软硬件结合的思路发挥到了极致。其中最郁闷的非HP莫属,从原来的合作伙伴到竞争对手,Exadata采用SUN的硬件,Oracle抛弃安腾处理器,甚至CEO都跳槽去了Oracle。

最近,Oracle推出了廉价的数据库一体机ODA(Oracle Database Appliance),这个产品同样是软硬件结合战略下的产物,目标是为中低端用户提供廉价,简单,高可用的数据库一体机,并与Exadata形成高低搭配,Exadata与小型机和高端存储竞争,ODA则占领使用PC服务器的中低端市场。

我们来看看这个机器的硬件特点:

Oracle在4U的空间内,搭建了一个两节点的RAC系统。其中内置了两个配置双路X5675CPU+96G内存的服务器,共享20块600G SAS磁盘,4块73G的SSD,内置万兆交换机用于RAC节点互联(Exadata的节点互联是采用Infiniband)。其中SSD用于存放redo log,提升性能。

Oracle的最大特点是软硬件结合,这套系统使用Oracle Linux,Oracle database 11gR2 RAC,以及专门用来配置和管理的Appliance Manager,用来提升管理性和易用性。

使用ODA与用户自己使用PC搭建数据库相比,用户无需购买SAN存储和万兆交换机,就可以实现一套高可用的RAC系统。软硬件一体机的另外一个最大的特点就是配置简单,即插即用,Oracle帮你搞定一切。不过,这个优点在有些用户看来也许是缺点,因为不够灵活,黑盒子不够透明等等。

但是,对于大部分用户而言,简单,易管理,高可用就是最基本的要求,看来ODA还是挺符合这些需求的。当然,价格也是一个重要因素,ODA的目标用户应该都是中小型用户,不差钱的用户通常都会买小型机,高端存储或者Exadata,如果定价合理,相信还是有很大的市场的。

有一点值得注意,ODA将整套系统全部封装在一个盒子里,无形中增加了风险,在异常情况下可能会导致整个系统不可用,比如断电或存储损坏等等。所以,考虑到可用性的问题,一套肯定是不够的,至少要再买一套做DataGuard。不过,这样做代价就有点高了,考虑到ODA肯定比自己买PC服务器贵,可以考虑自己购买PC来做DataGuard,降低使用成本,提升可用性。

–EOF–

标签: , ,

好书推荐-《Expert Oracle Exadata》

9 20th, 2011 | Posted by jacky | Filed under 大话技术

最近博客一直没更新,因为忙着翻译一本书,《Expert Oracle Exadata》。

本书的作者是Kerry Osborne, Randy Johnson和 Tanel Põder,看看三位重量级的作者就知道本书的技术含量非常高,尤其是在Exadata的资料如此匮乏的情况下,本书全面介绍了Exadata的各种技术内幕,绝对是一本非常有价值的好书。

目前,我和KumasKaya一起正在全力翻译这本书,预计几个月后,大家就可以读到这本书的中文译本,敬请期待!

–EOF–

附上本书的目录

1.What Is Exadata?
2.Offloading / Smart Scan
3.Hybrid Columnar Compression
4.Storage Indexes
5.Exadata Smart Flash Cache
6.Exadata Parallel Operations
7.Resource Management
8.Configuring Exadata
9.Recovering Exadata
10.Exadata Wait Events
11.Understanding Exadata Performance Metrics
12.Monitoring Exadata Performance
13.Migrating to Exadata
14.Storage Layout
15.Compute Node Layout
16.Unlearning Some Things We Thought We Knew
标签: ,

数据库三巨头

7 5th, 2011 | Posted by jacky | Filed under 大话技术

周末在eygle家做客,拍了这张照片,能和两位大师一起,我觉得挺有意义。三巨头的称呼,只是个玩笑,大家笑笑就好了。

Biti是我在阿里的导师,很多东西都是跟着他学的,包括思考问题的方式,甚至现在做的很多事情,都是从他那里交接过来的。Eygle是我的偶像,我刚开始学数据库的时候,他已经成大师了,现在依然奋斗在技术路上,值得敬佩,而且我和他还是同龄人。

那天,我们聊了很多,关于数据库技术的发展,关于传统行业与互联网行业的差异。回来之后,我在想一个问题,中国有大量的中小型用户,他们使用数据库还停留在比较低的水平,对应用优化没有很多经验,我们能否把互联网一些成熟的经验传递给他们,帮助他们提升管理优化数据库的能力,这是很有意义的事情。甚至,我想搭建一个廉价的数据库盒子,可以提供很好的性能和可靠性,而且价格相对低廉,这是我新的梦想。

晚餐时,大家不禁感概,人生很短暂,不要留遗憾。所以,想做就去做吧。

–EOF–

标签: