技术开发 频道

数据库新变革:内置内存技术崭露头角

  【IT168 评论】作为先行者,各大厂商已经找到令人信服的用例论据。内存数据库方案的强大实力帮助在线博彩公司Bwin.party的支持能力由每秒12000次下注提升至每秒150000次。下注次数的增加也就意味着其运营收益也将水涨船高。而在零售服务企业Edgenet这边,内置内存技术帮助领导者获得了接近实时的产品备货情况反馈,从而使其与来自AutoZone、Home Depot以及Lowe的客户建立起稳固的合作关系。这同时意味着客户代表不必把宝贵时间浪费在四处奔走之上,对方也自然表现出更理想的客户满意度。

  SAP HANA内存数据库帮助ConAgra以全新方式实现物料预测、规划以及定价测试。“仅仅加快执行速度还远远不够,”ConAgra公司IT副总裁Mindy Simon在最近的一次SAP会议上表示。“我们将尝试转变现有的集成预测机制。”

  作为一家年营收额高达180亿美元的袋装消费品企业,ConAgra公司必须针对其20000多款产品——涵盖瑞士小姐可可粉到Chef Boyardee意面——所涉及的4000种原材料在价格方面的波动作出反应。更重要的是,如果能够借助更快的分析流程及时出台极具吸引力的促销活动,那么ConAgra及其零售商客户将能够通过临时修改售价从这类利润微薄的产品身上获得更高收益。

  “举例来说,如果这周末一场强风暴袭击了东北部地区,那么我们希望瑞士小姐可可粉在该地的供货储备保持稳定——天冷要喝热可可,该产品的销量必然因此提高,”Simon指出。不过如果数据载入过程要花一整晚、再用几个小时整理具体的在店备货规划以及产品定价调整与收益间的关系,那么公司根本无法借助这一突发事件实现营收增长。

  凭借着HANA平台,SAP始终在内置内存技术领域扮演着早期采用者以及技术优胜者的角色。不过很明显,SAP还没有能力在内存内事务处理或者数据分析市场上取得垄断地位。现任数据库领导者IBM、微软以及甲骨文纷纷推出或者公布了自己的内存内方案功能及发展规划,此外市场上还充斥着多家其它老牌厂商以及初创公司。与其它竞争者之间的本质区别在于,这三大传统数据库劲旅希望通过向传统部署方案添加内存内功能的方式,继续保护其现有数据库产品的许可收入。SAP承诺实现“彻底简化”,其中所使用的全套内存数据库号称能够消除数据管理基础设施层并削减用于数据库及信息管理的整体成本。

  随着内存内口水战在2014年的全面爆发,市场肯定也会呈现出一片混乱的局面。为了拨开迷雾、了解真相,我们将近距离解读领先厂商们的功能承诺;更重要的是,探讨早期采用者们所提供的业务收益论据是否真实。

  SAP的四项承诺

  如果大家身为SAP公司230000客户中的一员,那么内置内存技术这个名词肯定早在三年多之前就被摆在各位面前——而这正是HANA项目的核心所在。SAP于2010年制定了一套宏伟的发展蓝图,而且在之后的几年当中不断宣扬此间获得的里程碑式成就。现在的HANA早已不仅仅是一套数据库管理系统,它还囊括了打包分析、应用程序服务器以及其它数据管理组件——这就是该公司所谓SAP HANA平台。作为SAP的计划核心,HANA将帮助客户实现以下四大要求。

  首先,SAP表示HANA将为应用程序提供难以置信的性能改进效果。第二,SAP坚称HANA能够以“无中断”形式实现性能交付,也就是说客户不必关停当前应用再换上另一款应用。第三,SAP宣扬HANA能够同时运行事务型与分析型应用程序,从而帮助企业用户清除“多余的”基础设施以及“不必要的”聚集、物化视图以及其它数据副本。第四,SAP公布称HANA将为新型应用程序提供基础,这一点对于传统数据库技术而言完全不可想象。ConAgra公司设计的实时定价与利润分析方案就是这类用途的典型代表。

SAP的四项承诺
▲您的企业目前在使用哪款数据库?

  (资料来源:InformationWeek网站2014年数据库技术调查结果统计,受访者为955位企业技术专业人士)

  对于SAP而言,最初也是最大的挑战在于说服客户利用HANA来取代已然经过数年使用、通过了时间考验的现有数据库。几乎半数SAP客户选择把自己的企业级应用程序交给甲骨文数据库打理。其余部分客户则依次使用IBM DB2以及微软SQL Server方案。SAP表示,目前HANA客户群体已经超过3000家,但这一数量仅占公司整体客户规模的1%多一点。IBM、微软以及甲骨文则总计拥有高达100万家数据库客户,以上图表也通过调查结果证实了三大巨头在数据库技术领域的霸主地位。

  高性能的价值所在

  没人怀疑内置内存技术能够在性能方面彻底压倒磁盘方案。尽管具体磁盘产品在转速与可用输入/输出(简称I/O)带宽方面存在差别,但已经有专家表示内存延迟为83纳秒、而磁盘延迟则为13毫秒。顺带一提,100万纳秒相当于1毫秒,因此二者之间的速度关系类似于每小时1200英里的F/A-18战斗机对阵花园里的顽皮小蜗牛。

  诚然,我们永远不可能彻底发挥内置内存技术所带来的全部速度优势——因为CPU处理时间以及其它制约因素都会影响实际效果,但大家至少可以借此彻底告别被磁盘I/O性能瓶颈牵着鼻子走的窘境。内置内存技术所带来的性能改进效果取决于应用程序类型、数据规模、数据复杂程度以及并发用户负载,但HANA客户报告称无论如何、其速度提升仍然非常明显。

  作为一家年营业额50亿美元的加拿大肉类、烘焙以及袋装食品厂商,Maple Leaf Foods发现原本在配备传统数据库的SAP Business Warehouse上需要耗时15到18分钟的盈亏报告生成工作如今在HANA平台上仅需15-18秒即可完成。这一分析型实例显示处理性能提升幅度达到60倍。印度自行车制造商Avon Cycles公司CIO Kuljeet Singh Sethi如今已经开始在HANA上运行SAP Business Suite,并表示过去需要耗时15到20分钟的复杂产品交付规划流程如今只需“数秒钟”。这一事务型实例显示处理性能提升幅度达到惊人的300到400倍之巨(这里我们假设所谓‘数秒’为3秒)。

  不过更重要的是,如此惊人的处理速度让Maple Leaf及Avon尝试一些过去根本无法想象的方案。举例来说,两家公司正着手将原有隔夜批处理机制替换为近实时数据载入方案,这样他们就能在同一天之内完成业务规划与利润分析工作。这样的方式不仅能够提高制造效率以及客户服务质量,同时也通过消除数据聚集需求简化了数据的管理流程。

  在SAP客户阵营之外,我们也看到了类似的性能提升效果。银行软件供应商Temenos尝试将IBM的内存内BLU加速方案(发布于去年四月)与DB2数据库相结合,并由此将原本需要30秒的查询处理流程缩短到了现在的三分之一秒——这要归功于BLU的列压缩与内存分析功能。速度提升之后,该公司摆脱了过去只能为网络或者移动设备用户提供少量最近交易项目的尴尬局面,开始有能力快速交付任意交易明细,Temenos公司首席企业架构师John Schlesinger指出。由于每次网络或者移动设备交易的支持成本约为10到20美分、每笔分行业务办理的成本则至少为5美元,因此便捷的网络及移动业务在卓越的性能支持下将为银行客户节约大量运营开支,Schlesinger解释道。

  与能够同时处理分析型与事务型应用程序的SAP HANA相比,BLU加速方案专注于应对分析型需求。微软则选择了另一条发展道路,即集中精力利用其内存内在线事务处理(简称OLTP)方案为SQL Server 2014带来改进——SQL Server 2014预计将于今年年中正式推出。目前已经有数千家微软SQL Server客户下载了该产品的预览版本,而作为内存内功能载体的Hekaton项目也包含于其中。

高性能的价值所在
▲如何选择后备数据库平台

  (资料来源:InformationWeek 2013企业应用程序调查,受访者为263位直接或者间接负责企业应用程序事务的技术专业人士)

  专为零售企业提供嵌入式软件即服务方案的Edgenet公司从两年前开始测试微软的内存内OLTP方案,在此期间该公司成功由隔间批处理机制升级到如今的近实时在店产品备货控制机制。作为Edgenet公司的客户,AutoZone在其5000家店面中储备有约300000种货品。通过将产品备货数据导入运行在内存内OLTP上的数据库表,Edgenet现在已经可以每十五分钟更新一次货品清单。“如果零售商能够向我们发送一条类型流程数据,我们就能实时以报告方式作出反馈,”Edgenet公司IT副总裁Mike Steineke表示。“惟一的限制就是零售商后端系统获取反馈数据的能力。”

  无中断,是真的吗?

  内置内存技术的效果似乎确有保障,但如果必须对现有应用加以更换、大多数企业用户估计要望而却步。与SAP类似,微软也向客户承诺了内存内OLTP的无中断支持能力(SQL Server 2014升级当然不算在内)。如果这一承诺在实践中得到证实,那么微软SQL Server势必会迎来无数应用程序的迅猛涌入。SAP的承诺范围相对有限,首先主要面向SAP客户、其次只适用于规模较小的SAP应用程序阵营。

  作为在线博彩企业PartyPoker的同行,Bwin.party同样不可能在需要对主要应用进行修改的情况下贸然尝试内置内存技术。他们早在三年前就有意扩大其在线博彩服务的经营规模,但当时这一决策受到了SQL Server 2008 R2在I/O性能方面的严重限制。“我们可以在完全不触及底层应用程序的前提下实现数据库更换,”公司数据库工程部门经理Rick Kutschera指出。由于无需针对内存内方案作出查询或者优化变更,Bwin.party公司得以快速扩展其投注支持能力。这样的灵活性在2013年再度发威,Bwin.party乘新泽西州网络赌博合法化的东风顺利与大西洋城赌场建立了合作伙伴关系、双方决定共同推出在线博彩网站。

  Bwin.party的Kutschera与Edgenet的Steineke都表示他们在没有对服务器进行任何变更的条件下实现了内存内OLTP部署。之所以如此顺利,是因为他们只需要把对处理速度要求较高的表导入内存即可。(相比之下,SAP HANA会把整个数据库导入内存当中,因此需要采用专有的内存密集型服务器设备。)即将发布的微软SQL Server 2014承诺提供其它多种工具,旨在自动检测数据库中的哪些表使用频率最高、最适合利用内存内机制实现性能提升,从而保证管理员们能从新方案中获得最大收益。

  甲骨文在去年十月宣布将为其旗舰级Oracle Database 12c推出一套内存内选项。(甲骨文早在2005年就收购了内存数据库厂商TimesTen,但买进的这款拥有十八年历史的数据库原先主要被用于电信及金融应用程序。)公司CEO Larry Ellison暗示称,甲骨文将在下年年初推出内存内产品,他还将客户们保证新方案不会对现有业务环境造成破坏。“目前能够正常运转的一切都能够与内存内方案顺利契合,而且完全无需进行数据迁移,”Ellison在去年九月举办的甲骨文OpenWorld 2013大会上宣称。

  他所提到的“迁移”评论显然是在针对SAP——后者坚称由甲骨文环境转向HANA并不困难。不过在SAP的技术指南网站上,我们发现其中提到SAP Business Warehouse的迁移过程并不像从Oracle 11g升级至Oracle 12c那么简单(这也在意料之中)。

  去年,SAP将自己的内存内方案提供给一部分企业客户,鼓励他们将自己的整套SAP Business Suite(其中包括ERP、CRM以及其它事务型应用程序)运行在HANA平台之上。SAP表示愿意参加这一试验性活动的客户超过800家,而且其中至少有50家切实着手进行。去年秋季,Avon Cycles将Business Suite从甲骨文平台转移到了HANA之上。Avon公司IT经理Shubhindra Jha表示整个过程——包括规划、硬件安装、测试以及生产部署——共耗时90天,而且由此引发的停机时间仅为数小时。不过Avon是一家规模相对较小的企业,全公司共拥有1800名员工以及75位ERP用户。

  SAP对阵老牌巨头

  请不要误会:甲骨文、IBM以及微软所给出的承诺与SAP的宏伟理想可谓大相径庭。正如前面所说,三大巨头的原则性立场就是避免中断现象,因为他们的愿望是在挽留现有数据库客户的同时实现业务扩展。

  SAP并不打算保护原有数据库以及数据管理基础设施,因此他们鼓励企业用户通过摆脱数据库以及其它“多余”基础设施的方式实现“彻底简化”。SAP方案的定位在于,通过在HANA内存内机制中同时运行事务型以及分析型应用程序,帮助企业用户摆脱数据仓库、中间件、应用程序服务器基础设施等传统方案,同时告别数据聚集以及其它与磁盘I/O瓶颈紧密相关的数据副本机制。

  IBM、微软与甲骨文则不主张用户脱离任何数据库或者数据仓库机制——我们只需升级至其最新产品版本,即可享受到新增的内置内存技术。更重要的是,他们还针对事务型及分析型工作负载推出了多种独立产品,这就迫使用户不得不持有更多数据副本并购买更多相关许可。

  IBM的BLU加速方案专门针对分析工作,但IBM同时也推出了全闪存存储阵列、旨在消除磁盘I/O瓶颈给传统应用程序及数据库性能带来的局限。虽然闪存在速度上无法与内存比肩,但至少比磁盘快得多。IBM表示这些阵列的使用成本要远低于购置额外的内存数据库技术,而且其事务处理时间缩减效果也能达到最高九成的水平。

  微软为Excel带来了PowerPivot与PowerView两款插件,作为对内存内分析方案的回应;不过这类客户端方案由于采用独立的数据模型与用户间彼此不同的信息版本而有可能产生分离孤岛。

  甲骨文在内存内分析性能提升问题上给出的答案是Exalytics,但这款缓存设备与其Exadata产品存在功能交集,不仅会带来更多数据副本、同时也迫使用户必须购买TimesTen或者Essbase内存数据库许可。Oracle Database 12c所提供的内存内选项可能要到明年年初才会正式与广大用户见面。

  SAP的HANA平台从理论角度看更纯粹也更简洁,但我们目前还没有看到关于“彻底简化”效果的更多有力证据。据我们了解,SAP是惟一一家几乎将其全部应用程序运行在该平台上的厂商。除SAP之外,我们在采访以及相关资料阅读中发现其它厂商都只挑选了一部分应用来支持HANA。

  举例来说,Avon Cycles将其Business Suite运行在HANA之上;但他们同时表示不会着手进行Business Warehouse迁移,除非确保其能够复制所有商务智能查询与报告数据——毕竟这些数据是多年经营积累所得。可以看到,查询与报告机制往往需要与聚集、物化视图、多维数据集以及其它历史遗留机制相结合,因此用户不可能在实现报表与查询数据重构之前就以“彻底简化”的方式转向内存内平台。

  Maple Leaf Foods目前正在将分析型业务规划及合并应用程序从甲骨文环境迁移至HANA平台,但他们也还没有作好将整套SAP数据仓库转向HANA的打算。目前相对数据仓库这一主体,HANA平台扮演的仍然只是摩托车上的跨斗角色、属于附加机制。“我们只会对能够创造价值的数据进行加速处理,因此我们精心挑选了能够交给跨斗打理的对应数据——具体数据量可能是一年、两年或者三年,”Maple Leaf Foods公司信息解决方案副总裁Michael Correa表示。“我们也审视了将CRM运行在HANA之上的可行性,并对把整套Business Suite迁移到HANA平台很有兴趣——但至少在未来几年内,对这些机制进行加速或者简化还不是我们的首要技术目标。”

  大部分企业用户都将遵循上述思路,他们提出的问题也相当尖锐:高速流程会带来哪些成本与风险?这种变更又是否能切实带来更低的使用成本与更高的运营收益?IT部门需要用一个又一个实例、一项又一项功能来回答这些问题。请注意,这些内存内方案往往要求用户将供应商软件升级至最新版本,无论SAP BW或者Business Suite、IBM DB2、微软SQL Server还是Oracle Database皆是如此。单单升级这一笔开销就会逼退很多跃跃欲试的企业客户。因此,预计内置内存技术市场的份额之争将在2014年持续升温,但真正的大决战恐怕要在几年之后才会真正打响。

  原文链接:In-Memory Databases: Do You Need The Speed?

4
相关文章