Page 266 - 《软件学报》2021年第11期
P. 266
3592 Journal of Software 软件学报 Vol.32, No.11, November 2021
5.5 WB-Index查询性能
WB-Index 中的上下两层索引均能支持范围查询,本实验针对基本的取值查询,通过改变窗口和元组查询范
围评估查询总体性能.实验设置窗口元组数量 N W =100 万,并预先将索引和流数据缓存在查询节点和构建节点.
图 15 为具体结果,s 表示单个窗口内流元组的查询范围.从中可得,查询耗时基本小于 1s.实验中,最大查询
范围对应的查询结果包含 60 万个元组,大小为 60MB,传输开销大,也影响了相应的查询性能.
Fig.15 Query time vs. query scope on WB-Index
图 15 WB-Index 查询时间与查询范围的关系
WB-Index 查询过程包括上层索引搜索、下层索引搜索、流元组加载和数据整合.本实验限定 1%的窗口流
元组查询范围,通过改变窗口查询范围,对比分析各查询环节耗时.
图 16 为具体实验结果,从中可得:当索引结构缓存在内存时,上下两层索引的搜索开销很小.下层索引支持
并行搜索,查询窗口范围的增加对索引搜索性能影响较小.数据加载和整合阶段相比索引搜索阶段耗时较大,数
据加载阶段需从存储节点或构建节点加载流元组,网络、磁盘 IO 导致其开销较大,若将相应元组直接缓存到查
询节点,即可避免 IO 开销而减少耗时,这也表明了缓存热点流元组的必要性.本实验中,查询结果数据量大,从而
导致最后的整合阶段耗时较长.
Fig.16 Time comparisons between each query stage on WB-Index
图 16 WB-Index 各查询阶段耗时对比