(1)概 述
基于内存计算的优势,德国SAP公司在2011年推出了革命性的内存计算产品——SAP HANA。SAP HANA实现了软、硬件相互间的紧密结合,通过提供基于内存的高性能的数据查询,最终用户可以直接对大量且实时的数据进行查询与分析,不需对业务数据创建聚合表便可以实现高性能。通过利用HANA的内存计算技术,可以充分发挥大数据在企业决策中的应用潜力。
SAP内存数据库采用数据压缩和内存计算技术,支持BO所有分析报表功能,同时也可以通过Excel直接查询在HANA中建立的分析模型。在软件架构方面,SAP HANA技术架构包括SAP HANA工作台、SAP内存数据库、Sybase数据复制服务器和SAP BO Data Service组件,如图3-2。
图3-2 SAP HANA技术架构
SAP HANA内存数据库(IMDB)是SAP HANA技术体系中最重要的组成部分。它同时包括数据库服务器、建模工具和客户端工具(ODBO、JDBC、ODBC、SQLDBC等)。在所有组成部分中,HANA计算和计划引擎是其核心部分。它负责解析、处理数据的CRUDQ操作,支持SQI和MDX语句以及SAP或者非SAP系统内的数据。SAP HANA数据库中的数据不完全是存储在内存里,也会用到Sybase数据复制服务器不停地写到磁盘中,包括Log-based,Trigger-based和ETL-based,还需要HANA Load Controller和BO Data Services来提供基于ETL的数据抽取功能,而支持SAP数据仓库、商务组件以及其他第三方系统。
(2)SAP HANA行存储与列存储的对比(www.daowen.com)
在SAP技术架构中,值得注意的是SAP内存数据库同时支持数据的行存储和列存储。列存储(Decomposition Storage Model,DSM),与行存储(N-ary Storage Model,NSM)的主要区别为:列存储是将所有记录中的相同字段的数据进行聚合存储,而行存储是将每条记录的所有字段的数据聚合存储。所以列式存储与以往的OLTP工具的行式存储相比较,其用于数据挖掘与在线分析等密集查询应用的优势是非常明显的。首先,列存储是对每个字段的数据聚合存储,当数据挖掘只需要几个特定的字段时,列存储的数据能大大减少读取的数据量,而行存储中每次必须读取整条记录;其次,列存储这种以一个字段的数据聚集存储的特点,也使得数据本身更容易为这种聚集存储设计更好的压缩/解压算法,减少数据冗余,可以将更多的数据装进内存。如图3-3。
图3-3 行存储与列存储的对比
(3)SAP HANA硬件变革
在硬件方面,SAP和IBM、DELL、华为等多个硬件厂商合作生产支持HANA数据库的高性能服务器。SAP HANA在硬件技术上的革新体现在:首先,SAP HANA基于服务器的多核处理器架构,每台刀片可以运载8X8核CPU进行同时运算,且支持大量刀片并行运行,通过数据分别进行管理。尽管基于X86的PC服务器架构,但性能已接近小型机;在数据寻址空间上扩展到6 4bit地址空间,单台服务器扩展到2TB,提供100GB/S的数据传输速度,直接访问内存,而不访问硬盘,数据传输最小化,数据读取速度最高提高100万倍。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。