论文部分内容阅读
目前,关于数据流系统的研究在传感器网络、金融分析、网络流量监测等领域有着大量应用。而针对数据流本身快速、连续、时变、瞬时等特性,如何为数据流管理系统设计一个具有自适应性的查询处理机制是目前研究的热点。
本文提出了一种基于数据流周期特性的稳定重优化机制。数据流上的查询大都是连续查询,需要持续运行一段时间。而数据流是随时间不断变化的,且这些变化大都具有周期特性。通过发现这种周期性,我们能够更好更充分地估计查询计划的收益/代价比,用来指导查询的自适应调整,并使得自适应查询处理所做出的决策更具有健壮性。
我们的设计思想是,根据获取的数据流概要信息,结合时间序列分析方法,计算得到查询中的过滤算子随数据流变化的周期。在此基础上,我们设计了一种新的数据结构——查询计划缓冲池,来为系统中注册的包含选择算子的查询缓存典型的候选查询计划。这样,一旦监测模块判断出系统的运行状态进入到某个候选计划的最佳执行周期,且当前计划不再满足最优条件,就触发重优化机制,将当前的查询计划切换至查询计划缓冲池中满足条件的计划。稳定的概念是本文创新性的提出。我们在进行计划切换判定的时候,要考察两个条件,第一是要满足切换后的计划比当前计划更优;第二就是切换后的计划可以以最优或者较优的状态在系统内运行一段时间,从而避免计划的频繁切换带来的系统开销。我们设计了一种代价/收益计算模型来满足稳定的要求。针对Argus系统的特点,设计了其上的稳定重优化模块。其中,为了更有效的获取数据流概要信息,我们设计了统计信息搜集模块,并结合线性回归和小波变换方法,提出了两种数据流压缩算法。重优化判定模块利用傅立叶变换和谱分析的方法来计算算子选择度的周期,进而计算查询计划的代价/收益值。重优化切换模块通过重新调度算子序列来实现计划切换。最后,实验证明我们的稳定重优化模块使得Argus系统对于具有周期性变化特点的数据流的查询处理,性能上得到了明显的提高。