论文部分内容阅读
OLAP(Online Analysis Processing)是数据仓库中一种重要的决策支持分析工具。传统的OLAP设计基于历史数据的离线批量计算,制约了分析的实时性。在当今瞬息万变的商业社会,决策者需要把握稍纵即逝的商机,要求OLAP能够对海量数据进行实时分析,以帮助决策者及时做出决策。实时OLAP要求在数据仓库实时更新的情况下具有快速查询响应的能力。为了达到实时OLAP的要求,数据立方体预计算是一种行之有效的解决方案,即将用户可能提出的所有查询条件预先进行计算,用户请求查询时直接返回预计算结果即可,而不需要进行复杂的在线聚集计算。随着数据仓库的实时更新,数据立方体也需随之实时更新,使得决策者能及时在线查询当前最新的业务情况。数据立方体所占空间将是原数据的几十甚至上百倍,故数据立方体计算是一项数据密集和计算密集型任务,计算不同维度组合上的聚集以及存储聚集结果对时间和空间都有非常高的要求。面向实时OLAP的要求,本文的研究思路如下:首先,数据立方体预计算解决了实时OLAP的快速查询响应要求。故本文对数据立方体的计算方法展开了研究,以降低计算时间复杂度和降低存储空间复杂度两个核心目标为引导,对国内外相关技术进行学习和研究。其次,为了解决实时OLAP的数据立方体实时更新问题,本文重点研究了支持增量更新的数据立方体模型及增量计算方法。最后,本文针对数据立方体在增量更新期间不可用的问题展开进一步研究,以切合实时OLAP的要求。经过对大量国外研究现状的学习以及自身的思考和探索,本文所取得的研究成果和创新如下:首先,通过研究发现,为了达到实时OLAP的要求,对数据立方体进行压缩是非常必要的,有效的数据立方体压缩方法在削减其空间复杂度的同时也将大大缩短其计算时间和更新维护的时间。本文采用可扩展多维数组作为数据立方体的数据组织模型,并通过去除完全冗余的逻辑压缩方法和基于HOMD的物理压缩方法对可扩展多维数组进行两次有效压缩,大幅度降低了数据立方体的空间复杂度。然后,本文首次提出了基于MOLAP的数据立方体逻辑压缩模型子数组压缩数据立方体SC-Cube(Sub-array Compressed Cube),并提出相应的增量计算方法,有效缩短了数据立方体的计算时间和更新维护时间。最后,针对数据立方体在增量更新期间内不可用的问题,本文进一步研究了基于SC-Cube的在线聚集合并方法,以满足实时OLAP查询要求。