随着财务数据量的增长,企业为了获得更好的报表功能和分析能力一直在努力简化数据管理。
在近期出版的《SAP Simple Finance软件概述》一书中,Lob财务和SAP创新中心负责人Jens Krüger博士向读者介绍了SAP Simple Finance的HANA驱动应用的内部原理,这种应用就是为简化财务操作而设计的。
本系列文章节选自第三章:消除冗余。文中对SAP Simple Finance背后的核心理念之一(消除冗余)做了深度解释。
你将获得哪些好处
从财务会计数据模型中消除物化视图和物化聚合会立即对整个系统事务吞吐量产生积极的影响。在SAP Simple Finance软件中,记账会计凭证既不需要给物化视图插入冗余副本,也不需要更新冗余聚合值。为此相应产生的维护一致性的数据库操作也不再需要了。
最终,根据实验测量发现,在数据库操作中插入或修改元组的总量也会减少一半。这些实验度量是基于一个大型SAP客户的真实数据进行的。测试涉及五百个会计凭证,每个凭证有两个行项目。运行于SAP HANA之上的传统SAP ERP财务系统需要生成26000个元组做更新插入和删除操作,而SAP Simple Finance软件只需要插入11000个数据库元组,然后就可以整体测试,节约了一多半。
当然,更少的元组可以直接对应为等级凭证需要耗时更少。在SAP HANA的SAP ERP财务软件中每个凭证需要200毫秒完成,而在SAP Simple Finance软件中从头到尾只需要100毫秒,时间节约一半。最终,运行SAP Simple Finance软件系统的吞吐量是原来的两倍。
设计好的试验衡量甚至还未包含资源竞争的影响,而这一点在数据冗余系统中经常出现。企业系统通常要并行处理许多事务。在物化数据的情况下,并发聚合更新尤其会带来资源竞争,因为物化聚合数据必须对更新锁定。例如,在大量使用G/L账号的情况下,数据库系统必须处理按顺序处理其它并行账务,为了保持一致性他们要不停地更新该账号的总计额。这种糟糕的情况在SAP Simple Finance软件中不会再出现,因为所有事务都只是直接把数据插入数据库,不需要锁定了。
在考虑整体架构的时候,传统观点认为:列式架构内存数据库中的语句在写操作方面不可能像读操作那么快。现在这一观点不再成立了。对SAP Simple Finance软件的度量发现,即便是写操作也可以媲美甚至胜过运行于行式存储传统数据库之上的SAP ERP财务软件。
数据库资源是另一个可提升领域。我们继续来看财务组件,SAP Simple Finance软件消除了冗余,同时可以极大降低数据库资源耗用。之前由于冗余数据(包括物化视图和物化聚合)占用的内存现在不再需要了。SAP SE自身用于财务模块的内部系统(主要SAP生产系统)的数据库资源现在也可以降低三倍;考虑到数据老化概念如果采用的话,还会带来更进一步节约。所以总体来看,降低资源消耗14倍基本是可行的。基于SAP客户数据的计算也表现出了不错的提升,资源消耗减少6.5倍。
这种数据库资源削减可以直接带来硬件节约和更低的总拥有成本(TCO)。此外,SAP HANA还支持移除分离的数据仓库,这要多亏了整合了olAP功能。这样一来,你可以在整体资源方面再多节约两倍。这些数字展示的是都是把SAP HANA运行作为数据库系统的情况。SAP HANA的存储架构和压缩机制还能形成进一步节约,节约程度可能还相当可观。
总体而言,SAP Simple Finance软件证明内存计算技术对于从财务数据模型中消除数据冗余是完全可行的。对于报表或者分析用途,冗余也不再是必须的了;这些任务可以基于行项目算法直接高速运行,而不必依赖于预构建到数据模型内部的物化聚合数据进行。最终,用户不再受限于那些硬嵌入到系统中的分析代码。相反,他们可以自由灵活地查询数据,而且性能完全满足他们的预期。
在本系列文章中,我们重点介绍了SAP Simple Finance软件无冗余数据模型可以带来的益处。收益主要可分为两方面:一个是总拥有成本TCO的降低(增加吞吐量并降低数据库资源),另一个是整体灵活性程度。总的来说,SAP Simple Finance软件消除冗余对系统和流程带来了极其显著的简化。我们利用真实环境数据对于提升性能和其它一些关键提升可行性进行了试验证实。