百胜erp数据魔方BStyle BI分析报表
[现状分析]
客户反映BStyle中数据分析报表查询速度较低,一个查询要等待5分钟以上,如果数据量较大时,甚至根本无法查询。
由客户端组织SQL查询语句,通过ADO.Net访问业务库,返回DataSet数据并绑定到PovitGrid控件上。经过技术上分析,发现导致效率低下的原因大致有以下四点:
查询语句过于复杂,关联表太多。比如:查询一个商品进销存报表,客户需要看到职能客户、仓库、商品、颜色、尺码等信息,则这个查询就需要商品进销存试图关联客户表、仓库表、商品表、颜色表(规格1)、尺码表(规格2)等。
查询语句中包含一些聚合函数和运算函数。比如,在百胜erp系统的进销存试图中并没有记录库存期初、期末的信息,但查询库存报表中还必须要有期初、期末信息,这就需要在查询语句中拼凑聚合函数以统计期初、期末信息;此外,客户要根据选定价查看相应的金额信息,则查询语句中则需要拼写[数量X 选定价格]的运算信息。
业务库是一个实时运行数据库,在查询的同时难免有业务正在进行,这也是影响查询效率的因素之一,而且查询时也可能会影响业务的操作。
网络间传输的数据集过大,一个详细的进销存查询的数据量会达到几百兆,在网络不好的状况下,传输将会消耗很长的时间的。
由于以上四点因素的影响,导致一个简单的进销存的查询耗时5分钟以上,这已经超出了客户所能容忍的范围,一个稍微复杂点的进销存查询,则根本无法查询出结果。
为了解决上面的问题,百胜ERP软件必须采取新的技术,以提高查询的效率。这也就是我们最近一直在研究的新的技术,并在某客户应用的技术——数据魔方。