论文部分内容阅读
联机分析处理和Skyline(轮廓)查询技术是对海量数据进行分析以辅助决策的重要技术。数据安全以及快速响应是它们的两个重要需求。解决快速响应问题的一种方法是采用立方体技术,把所有可能的某类查询结果组合成某种立方体,通过事先预计算并物化,达到无需再计算而即时响应查询的效果。解决安全问题的一种途径是利用安全数据库完善的安全保护机制,以标记来区分用户和数据敏感度。因此,研究标记安全数据库下的立方体的安全以及立方体的计算、更新和存储等关键问题具有重要意义。为了迅速响应Skyline查询,提出了标记Skyline立方体概念。在标记安全数据库中用户和表中元组都打有安全标记。当用户的标记支配元组的标记时该用户才可以读取该元组。这使得不同标记的用户看到的数据集即处理对象是不同的,处理结果也随之不同。这与常规环境下有明显差异。将所有不同标记用户的Skyline查询结果组成标记Skyline立方体可以直接响应不同标记用户的查询。除了从多维角度考察数据之外,在标记安全数据库中,还存在着从多用户角度考察数据的要求,即不同用户的数据立方并不相同。为此,提出了由所有不同标记用户对应的数据立方组成的标记数据立方体概念。在标记Skyline立方体和标记数据立方体概念基础上,进一步提出了标记立方体模型,一方面产生受安全数据库保护的立方体,另一方面建立了源表元组与立方体元组之间安全标记的映射关系,使源表的安全设置在立方体中得到合理体现,不会泄露源表机密。为了提高标记Skyline立方体的计算效率,提出了高效算法SLSC。现有计算Skyline立方体的算法没有考虑标记特征,而用现有计算单一Skyline的算法独立计算每个Skyline进而得到整个立方体的方式的效率难以令人满意。SLSC算法基于共享策略,利用标记支配关系所蕴含的点集包含关系,通过迭代实现计算结果共享。理论分析和实验结果表明,该算法提高了效率,尤其当标记等级数增大时,效果显著。为了提高标记Skyline立方体的更新效率,提出了增量更新算法BUI和BUD。标记Skyline立方体包含的数据量大,更新比较复杂。当少量源数据发生变化时,重新计算整个立方体代价较大。BUI和BUD算法针对标记Skyline立方体的特点,采用自底向上的方式遍历受影响的标记,在已有立方体基础上进行增量更新。理论分析和实验结果表明,这些算法显著提高了更新效率。高效存储是标记数据立方体至关重要的问题。为有效缩减标记数据立方体的存储尺寸,提出了紧凑存储方案。现实生活中数据往往是稀疏的,加上标记支配关系蕴含的元组集包含关系,导致不同标记小方之间容易出现数据冗余。特别地,出现多个元组间仅标记值不同而标记形成支配链的情况。紧凑存储方案此时只保留一个元组删除其余,从而缩减了标记立方体存储尺寸。同时,通过合理设计删除信息记录表和紧凑处理顺序,使恢复容易、安全。