论文部分内容阅读
在当今社会,各个企业或公司在发展的过程中不断积累的数据越来越大,而对于这些数据的利用率却是很低效的,因此,各个单位总是期望能够从这些数据中获取一些信息用于帮助自己进行商业上的信息分析,辅助决策者进行更有利的判断,为此伴随着公司的这些需要,商业智能技术就随之产生,随着时间的推移,各个单位在商业智能领域的研究也取得了极大的进展,设计出了很多非常棒的商业系统或者分析软件,例如用于数据集成的开源的Kettle,用于数据挖掘的开源的Weka,等等,不仅如此,还提出了传统的商业决策系统的架构,通过这些技术使得各个公司或单位对历史数据信息的获取能力有了极大的提升。但是在传统的BI系统的架构中依然存在着没有实现业务规则与BI操作的分离的一种流程化管理,造成了进行商业分析时的专业要求高的不足,这样的不足又造成了业务分析人员不能够专注于商业分析还需要花费极大的精力来熟悉这些专业工具的使用,对我们业务分析人员的分析效率有着明显的阻碍。基于这样的原因企业和公司对一种能够实现业务规则与操作分离的BI系统有着极为迫切的需求,同时我们分析了工作流技术在业务管理上面的优势,因此为了满足这样的需求,在我们的BI系统中完成一个基于工作流技术的业务引擎的设计就是我们首要解决的关键性问题。现有的传统BI系统虽然有够满足商业分析的基本需求,但是由于传统的BI系统对于BI操作采取的是一种串行调度执行的机制,使得它在进行商业分析时的会出现效率上的瓶颈,同时尤其是当我们处理的数据的量变得极为巨大的时候,这样的瓶颈显得犹为的明显,因此在处理大规模数据的时候的能力有着明显的不足,通常来说并发调度执行的效率总是高于串行调度的执行效率,因此我们考虑把传统BI系统的action工作流的并发来提高整个BI系统的运行效率。本课题的研究工作主要包括了下面这些内容:首先研究了关于工作流引擎的基本原理、架构,接下来对传统BI系统solution文件的执行机制进行分析,首先,我们研究了工作流技术基本原则,分析了常见的工作流引擎的体系结构,其次是完成了对传统的BI解决方案的运行流程机制进行分析。根据我们的分析结果来完成工作流技术与solution文件的执行机制的结合,设计实现了BI系统的业务引擎。然后为了实现action工作流的并发调度上的优化,详细的分析了传统BI系统下action操作的执行机制,并且针对ETL操作进行了详细的分析,提出了ETL操作的不相关集的划分办法,然后提出了我们的并发调度算法,然后完成了ActionFlowEngine的设计与实现。最后还通过了实验来验证了我们改进方案的正确性。