Page 396 - 《软件学报》2025年第9期
P. 396
王尚 等: 基于神经网络的分布式追踪数据压缩和查询方法 4307
学习率可以影响模型的预测精度, 从而影响最终的压缩文件大小. 为了测量其影响, 我们采用了从 0.1 到
0.000 01 共 5 种不同的学习率来训练和更新网络模型, 并记录 NCQT 在压缩过程的预测准确率以及压缩后的文件
大小, 结果如表 8 所示. 从表中可以看出, 学习率较高时模型的预测准确率较低, 导致最终压缩文件的大小较大. 这
是因为高学习率会导致优化过程容易跳过最优值, 从而导致模型的预测偏离最优结果. 另一方面, 学习率过低也会
降低模型的预测准确率, 这是因为较小的学习率会导致模型收敛速度变慢, 难以跳出局部最优值. 除此之外, 我们
发现压缩率对模型预测精度的敏感度较高. 以 Sock Shop 数据集上的结果为例, 学习率 0.1 和学习率 0.001 时的预
测准确率分别是 74.34% 与 77.72%, 二者仅相差了 3.38%, 但后者的压缩比是前者的 1.8 倍, 这在 Robot Shop 数据
集上也有相似的结果. 为了解决以上问题, 我们以较大的学习率 0.001 作为 NCQT 的默认设置, 并且采用了自适应
优化方法, 即优化器在训练和压缩过程动态调整学习率.
表 8 不同的学习率下的评估结果
Sock Shop Robot Shop
学习率
准确率 (%) 文件大小 (MB) 准确率 (%) 文件大小 (MB)
0.1 74.34 25.39 82.81 33.46
0.01 76.82 16.50 84.19 22.53
0.001 77.72 13.99 85.11 18.03
0.000 1 77.73 13.99 85.15 17.92
0.000 01 77.61 14.11 84.79 18.42
为了提高模型的预测精度, NCQT 在压缩过程中利用压缩数据动态更新模型的参数. 为了验证该优化对压缩
过程所产生的影响, 我们实现了两种不同的模型: 一种是压缩过程中模型参数冻结的静态模型, 另一种是在压缩过
程中每次预测后根据预测结果更新参数的动态模型. 我们使用相同的模型参数设置和相同的训练后模型, 在两种
模型上分别执行压缩过程, 并记录了它们各自的预测准确率、压缩后文件大小和压缩过程的时间开销, 实验结果
如表 9 所示.
表 9 模型动态更新对压缩的影响
Sock Shop Robot Shop
模型
准确率 (%) 文件大小 (MB) 压缩时间 (s) 准确率 (%) 文件大小 (MB) 压缩时间 (s)
静态模型 77.27 15.21 386 84.35 21.10 701
动态模型 77.73 13.98 1 031 85.18 17.90 1 877
从表 9 可以看出, 动态模型相较于静态模型压缩效果提升了 8%–18%, 压缩时间是后者的 2.7 倍. 实验结果表
明, 动态模型相较静态模型需要更多的时间来压缩数据, 但是能够获得较高的预测准确率和更小的压缩文件大小.
因此, 为了平衡压缩效果与压缩效率, 我们通过设置更新时间步来限制模型参数更新的频率, 选取合理的时间步大
小可以确保在可接受的时间范围内获得较好的压缩结果.
5 总 结
分布式追踪是分析和理解大型分布式系统的重要手段, 如何高效地压缩与查询追踪数据具有重要研究意义.
本文提出并实现了 NCQT, 一种基于神经网络的追踪压缩和查询方法. NCQT 可以有效识别追踪数据在内容与结
构上的冗余, 并将自然语言文本转换为易于压缩与查询的中间表示. 然后, NCQT 使用神经网络模型对中间表示进
行学习, 并通过算术编码将其压缩为更短的二进制序列. 此外, NCQT 对追踪数据进行分组处理, 在查询时过滤无
关的单元, 可以在压缩数据上实现较为高效的查询. 我们在 4 个开源微服务系统的追踪数据集上进行了广泛的实
验, 以评估 NCQT 的有效性. 实验结果表明, 与现有的通用数据压缩工具和神经网络压缩方法相比, NCQT 显著提
高了压缩比. 对于追踪数据的查询, NCQT 在最佳情况下可以取得优于目前主流的追踪查询工具的实验结果.
本文提出的压缩方法是在单个节点上进行的, 压缩和查询效率受单机资源的限制. 在未来的工作中, 我们将研

