12大好处 甲骨文吴承杨谈内存技术性能突破
- +1 你赞过了
【天极网服务器频道专稿】随着硬件价格的下降,服务器的配置在近两年有了突飞猛进的提升,而内存容量的增长也使得厂商在进行产品设计时可以以不妥协的原则为用户带来更为强大的产品。2014年6月,甲骨文公司首席执行官Larry Ellison对内存技术进行了深入浅出的介绍,采用了内存技术的应用大幅度了提升了企业数据处理的效率。
在不久前的专访中,甲骨文公司副总裁及大中华区技术产品事业部总经理吴承杨对天极网记者透露,在一次测试当中,通常需要4个小时处理的工作量在使用内存技术后仅用了4秒钟便完成了,这样的数据让人难以置信。此外,成本管理应用的速度可以达到以前的257倍,财务分析应用处理数据的速度是以前的1300倍,销售订单分析应用的速度是以前的1700倍等。这都是内存技术带来的巨大性能突破。
长久以来,关系型数据库在企业数据中心中的使用已经形成了标准模式,而Oracle Database In-Memory正是通过对这种标准模式进行架构调整实现了性能的提升。
吴承杨表示,由行和列组成的关系型数据库一直在相关表中存储信息,传统上表数据以行格式存储在磁盘和计算机系统内存中,诸如员工、客户、发票、生产部件、电话记录等业务交易都是在行层面变更表信息。而在对数据库进行查询时,一般是以列作为查询基础的,但在进行查询,尤其是数据分析查询时,还需要查看表数据的所有行才能得到查询结果。
而内存技术的出现打破了这个常规。据介绍,Oracle Database In-Memory在传统的行存储方式上,增加了一种列存储方式,显著提高了数据分析查询和复杂交易处理的速度。双格式方法同时以行和列的方式组织数据,行存储以实现最佳交易性能,列存储以实现高速数据分析。双格式方法不仅提高了原始速度,更带来了很多好处。
吴承杨强调,Oracle Database In-Memory无需对应用做任何修改。他举了一个非常生动的例子:如果将数据库应用比作汽车,原来这辆汽车零到百公里的加速时间为10秒,而现在无需改动发动机,无需改动地盘,无需做任何修改,只需要安装了Oracle Database In-Memory,就可以将零到百公里的加速时间大大缩短,这对于所有Oracle数据库的用户,以及希望使用Oracle数据库的用户来说是一个很大的喜讯。
而在专访的最后,吴承杨归纳了Oracle Database In-Memory的12大特性,他们分别是:
1. 作为Oracle数据库12c的选件提供。Oracle Database In-Memory不是独立产品,而是Oracle数据库12c企业版的产品选件。因此,2013年推出的Oracle旗舰关系型数据库Oracle数据库12c现在拥有了可选的内存列存储功能。
2. 不仅仅是内存。Oracle Database In-Memory将新的列存储信息放入快速RAM(随机存取存储器)中。同时,行存储信息仍然读自并写至内存、闪存及磁盘,并用列存储同步信息。之后,列存储信息仅存在于内存中。
3. 数据库达到极致性能。在2013年演示该技术时,甲骨文申明,Oracle Database In-Memory提供查询结果的速度是以前的100倍,交易处理速度翻了一番。在今年6月10日正式推出时,甲骨文也提供了客户测试数据,再次印证了这些数字。
4. 速度甚至更快。如上所述,Larry Ellison提到,在测试中,甲骨文客户通过Oracle Database In-Memory大幅提升了数据分析查询速度,而且远不止于以前的100倍。Oracle内存运输管理(Oracle In-Memory Transportation Management)软件的运行速度是以前的1030倍,PeopleSoft 内存财务分析(PeopleSoft In-Memory Financial Analyzer)软件的执行速度则是以前的1300倍。
5. 新的列存储方式显著提升了数据分析速度。采用Oracle Database In-Memory后,所有数据分析查询都依靠列存储方式运行,而不是索引或者行存储。列存储针对数据分析查询进行了优化,速度是以前的100倍(一些客户的测试结果还可达到更快的速度)。
6. 联机交易处理速度可提高一倍。凭借Oracle Database In-Memory列存储,联机交易处理(OLTP)速度可提高一倍,因为不再需要建立数据分析索引(这种索引可提高基于行存储的已知查询的速度),也不再需要为基于列存储的查询更新数据分析索引。
7. 无需对应用或查询进行更改。应用和数据分析查询继续依靠Oracle数据库12c运行。Oracle Database In-Memory只是将查询处理改在列存储空间中进行,而应用和查询的代码无需进行任何更改。
8. 易于设置和维护。Oracle Database In-Memory的设置包括配置列存储的容量、规定列存储中包括哪些表(或分区——数据库存储的一种结构体)以及删除不再需要的数据分析索引。这即是全部所需的设置。
9. 具备容错能力。Oracle Database In-Memory与Oracle数据库12c一样;内存列存储是与行存储同步的;具备Oracle数据库12c的所有可靠性和灾难恢复能力,包括Oracle真正应用集群、列存储信息保护等。
10. 随时应对大数据。无论应用和查询针对的数据库体量再大、数据分析索引的使用再频繁还是查询运行时间再长,Oracle Database In-Memory都依然能提供实时数据分析。Oracle Database In-Memory对数据库大小没有限制。
11. 支持多种不同查询。即是企业需要在不断增加的企业信息中为无限多的业务问题寻求答案,Oracle Database In-Memory都能即时提供查询结果。
12. 双格式架构提高灵活性。Oracle Database In-Memory面向运行OLTP及业务数据分析的关键任务数据库和应用。将交易处理数据库和报告数据库分开,一直是优化OLTP及数据分析采取的方法,但其代价是需维护单独的系统硬件、软件以及同步这些系统的流程。凭借Oracle Database In-Memory,客户可以合并交易和报告数据库,使数据库能够通过一个云中托管的数据库示例,进行纵向扩展、交易处理及数据分析查询,在移动应用中提供高速交易处理,即时给出结果。
注:本文部分文字资料,来源于吴承杨署名文章《内存技术提高速度、性能和灵活性的12大特性》