Page 262 - 《软件学报》2021年第11期
P. 262

3588                                Journal of Software  软件学报 Vol.32, No.11, November 2021

                 会不可用.对于时长为 T w 的窗口 W i ,其中包含的元组数 N w 与 t delay 正相关,因此窗口内包含的元组数存在上限
                 N max ,对应的数据流速 N max /T W 即为索引所能承受的最大流速.同理,下层索引发布时长 t releaseLower 与网络传输带
                 宽 N B 相关,也会影响整体构建时延,因此也有带宽下限约束.带宽与数据流流速应成正相关关系,其联系由公式
                 (17)决定.

                 5    实验评价

                 5.1   实验环境
                    本次实验选用阿里云平台,集群环境由 20 个 ECS 实例节点组成.分布式索引选用 JAVA 语言实现.表 3 为
                 ECS 实例详细配置.为了便于描述,用 ECS01~ECS20 对节点编号,各节点具体安排见表 4,其中,将负载较小的节
                 点类型部署在一起,以最大化资源利用率.
                                      Table 3    ECS instance’s software/hardware configuration
                                                 表 3  ECS 实例软硬件配置
                                         类别                     配置
                                         系统                Ubuntu 16.04,64bit
                                          CPU      4 cores Intel Xeon Platinum 8163@2.50GHz
                                         内存                     32GB
                                         网络                    1Gbps
                                         磁盘                    100GB

                                           Table 4    Types of nodes in WB-Index cluster
                                                表 4   WB-Index 集群节点构成
                                             编号                     类型
                                             ECS01                构建节点
                                          ECS02,ECS03          查询节点,协调节点
                                             ECS04          控制节点,协调节点,查询节点
                                          ECS05~ECS14             查询节点
                                          ECS15~ECS20             存储节点
                    实验使用 TPC-H 生成的 1 亿条 Line Item 数据集,数据格式为〈K,V〉,其中,V 的大小为 100B.实验中,实时从
                 内存加载数据来模拟接收一个数据流,并通过改变加载量来模拟不同的数据流速.WB-Index 中,B+树节点阶数
                 m=3000.
                 5.2   下层索引构建性能评估
                    由第 4.4 节的理论分析可得,下层索引构建性能是影响分布式索引构建性能的重要因素.下层索引构建中
                 的分片排序阶段,通过并行排序法加速排序.通过预实验得到:
                    •   当前机器配置下,分片元组数量小于 150 万时,传统快速排序性能更好.
                    •   超过该数据量时,用 2 个线程并行排序性能较好.实验中,按照此规则选用合适的排序方式.
                    由第 4.1 节的理论分析可得,分片数 N slice 直接决定了下层索引的构建性能.本实验在 20s 的时间窗口内,模
                 拟 100 万/s 的数据流,评估分片数对下层索引的影响.
                    图 9 为具体实验结果,从中可得:
                    •   随着分片数的增加,下层索引构建性能先升后降;
                    •   分片数量达到 25 个时,构建性能趋于稳定,并在 35 个时性能最优.
                    这与第 4.1 节的分析结论相符.实验对比了下层索引构建中各阶段耗时,由图 9 可得,排序是最主要的时间
                 开销.因此,将构建节点部署在高性能主机上,能有效提高下层索引构建效率.
                    数据流流速存在波动性,本实验在 20s 的时间窗口内,通过模拟不同数据流速,评估下层索引构建的稳定性,
                 实验设置窗口分片数 N slice =35.
   257   258   259   260   261   262   263   264   265   266   267