两周前,甲骨文在全球发布了Oracle Database In-Memory,Oracle Database In-Memory将作为Oracle数据库的可选配件的方式提供,可在企业运行Oracle数据库的系统上运行,支持企业目前正在使用的应用,无需对应用进行任何修改。
甲骨文公司数据库技术产品执行副总裁Andrew Mendelsohn也亲自来到北京,向中国媒体讲解Oracle Database In-Memory。据介绍,Oracle Database In-Memory有三大目标,***是实时分析,并且获得100倍的性能提升;第二是更快的OLTP混合工作负载;第三是轻松迁移,易于部署,无需改变应用。Andrew Mendelsoh强调提升分析速度是最重要的目标。
甲骨文公司数据库技术产品执行副总裁Andrew Mendelsohn
行、列双格式的数据库内存
过去,客户在行式数据库和列式数据库之间只能选择一类,从而在数据处理性能上受到局限。行式数据库更适合交易性数据的处理,例如电子商务中的应用,插入或查询一条销售订单,而列式数据库则更善于进行分析类操作,比如按地域生成销售额报告。而Oracle Database In-Memory的一大创新即是突破行列限制,采用双格式数据库内存,通过在同一张表在内存中同时支持行和列两种格式,同时激活并保持事务一致性,对分析和报表采用列格式,OLTP则采用行格式运行。
在Oracle内存列式存储技术中,纯内存中的列式存储能够快速响应数据变化,可达到2倍至20倍的压缩比例,其粒度还支持表级与分区级,并适用于所有主流的硬件平台,方便企业进行部署。Andrew Mendelsohn强调,“SAP需要购买硬件来支持内存列式存储技术,例如客户要购买SAP HANA,但是Oracle支持所有主流硬件平台,客户不需要再购买硬件产品。”
在测试当中,列格式的每CPU内核可达到10亿条/秒的扫描速度,而行格式仅能达到百万条,性能的提升高达一百倍以上。不仅如此,通过将多表的连接操作转化为高效的列扫描,表连接速度也加快10倍。
对于传统的OLTP系统,为了实现快速查询,往往采用分析型索引的方式,在这样的架构下,向表中插入一条记录需要同时更新数十个索引,OLTP系统性能被迫降低。而甲骨文通过用列存储取代分析型索引,新的OLTP系统中可以给予任意一列实现快速分析,OLTP和批处理的速度得到提升。
软硬件集成
Oracle Database In-Memory通过在大型SMP服务器上的纵向扩展、跨服务器集群的横向扩展以及存储分层,满足任何需求;能够经济实惠地运行任何规模的数据库,无论是PB级数据仓库、大数据处理还是数据库云。同时,Oracle Database In-Memory还支持Java、R、大数据、PHP Python、Node、REST、Ruby等语言。它全面支持各种数据类型,包括关系型、对象型、XML、文本、空间数据以及***的集成式JSON。
Oracle集成系统与Oracle Database In-Memory实现了***互补。包括Oracle Exadata数据库云服务器和Oracle SuperCluster在内的Oracle集成系统针对Oracle Database In-Memory进行了优化,提供大容量存储、***的性能和高可用性,同时还提供了存储分层,将活动性较低的数据转移到闪存和磁盘中,以提供出色的性价比。Oracle集成系统的内存容错功能跨多个节点选择性地复制内存数据,因此,如果一台服务器发生故障,便可以立即使用内存数据副本来满足查询要求。***Direct-to-Wire Infiniband提高了内存的横向扩展速度。
Oracle M6-32大内存机(Oracle M6-32 Big Memory Machine)是适合Oracle Database In-Memory的、纵向扩展平台,提供多达32TB DRAM内存和3TB/秒内存带宽,***限度地提高了内存性能。
此外,Oracle Database In-Memory在任何与Oracle数据库兼容的现有应用环境中,都能够非常简单、快捷地进行部署,如同拨动一下开关,无需对应用做任何更改。Andrew Mendelsoh表示,Oracle Database In-Memory的部署是很容易的,通过"inmemory_size=XXX GB"指令语句,即可开启内存计算的功能。Rittman Mead***技术官Mark Rittman表示,“关于Oracle Database In-Memory的使用,实在没什么好说的,只要把开关打开,选择表装载到内存就行了,别的什么也不需要做。”
Andrew Mendelsohn表示:“作为业界惟一能够跨应用、中间件、数据库和系统全面实现内存计算的厂商,甲骨文致力于推广内存技术,帮助企业提升数据库性能、做出明智决策,并促进可持续的营收。Oracle Database In-Memory的问世,是甲骨文持续在数据库领域创新和投入的结果,也是甲骨文对全世界企业客户承诺的践行。我们希望为所有客户以***的部署及运维成本,提供***的可用性、可扩展性和安全性。”