流更新的容错聚合:一种全新的分布式数据聚合方法
1. 引言
数据聚合在可扩展系统设计中扮演着重要角色,尤其是在大规模点对点系统和传感器网络中。传统的聚合算法在容错方面存在不足,特别是在消息丢失的情况下。为了解决这一问题,本文介绍了一种新的基于平均值的聚合技术——流更新算法。该算法旨在容忍大量的消息丢失,确保在动态和异步环境中依然能够收敛到正确的值。通过与现有方法的比较,展示了流更新算法在性能和鲁棒性方面的优势。
2. 相关工作
过去几年中,已经提出了多种聚合算法,主要分为两大类:基于树的方法和基于平均的技术。基于树的方法(如 TAG)依赖于特定的聚合结构(如树),沿预定义的路由拓扑执行聚合。这类方法通常在准确性、速度和通信开销之间进行权衡。基于平均的技术(如推总协议、推拉八卦、DRG)则通过迭代平均所有节点上的变量值来实现聚合。这些方法与路由拓扑无关,通常使用对等体之间的基于流言的通信方案。
推总协议
推总协议是一种基于流言的聚合算法,本质上由网络中聚合值的迭代成对分布组成。在每一轮 ( t ) 中,每个节点 ( i ) 维护并传播一对值 ( (st,i, wt,i) ),其中 ( st,i ) 表示交换聚合的总和,而 ( wt,i ) 表示在给定时间 ( t ) 和节点 ( i ) 下与该总和相关联的权重。推总协议通过以下步骤工作:
- 每个节点将其当前值的一半发送给一个随机选择的目标节点以及发送给自己。
- 本地值通过上一轮接收到的所有数据的总和进行更新。
- 每个时间点 ( t ),每个节点可以通过 ( st,i / wt,i ) 来估计聚合结果。
超级会员免费看
订阅专栏 解锁全文
1918

被折叠的 条评论
为什么被折叠?



