1. Merging Digest 的 two-by-two merging 策略。
Merging Digest 的 two-by-two merging 策略如何实现?为什么它能在合并后保持分位数近似界?
- 质心(centroid)结构与插入规则
- 按中心排序后两两配对的合并流程
- 合并保持 ε-近似分位数界的理由
Merging Digest 是确定性的分位数草图(quantile sketch):维护若干质心(centroid,含均值 sum/w 与权重 weight),插入时把新点合并到最近的质心,受质心权重上限约束。合并(merge)两个 sketch 采用 two-by-two merging 策略:把两个 sketch 的质心按中心(mean)排序后两两配对,合并每一对质心——权重相加、中心加权平均;若合并后的质心超过权重上限则分裂成两个。该策略保证合并后仍满足 ε-approximate quantile 界,且可反复合并(分布式聚合场景)不累积破坏误差。
正确性来源:分位数草图把"压缩"定义为保留的质心能还原 (εn)-近似分位数;two-by-two 配对使任意分位数在合并后都能在原 sketch 的质心链上找到包围,质心权重上限约束合并过程中的信息损失,误差维持在 O(ε) 级别,空间 O((1/ε)·log(εn))。
合并策略的要点是"按中心排序后配对合并"保证单调性与界保持;与 GK 的"不可简单合并"形成对比,Merging Digest 的设计目标就是可合并(mergeable),面试时强调"两两配对 + 权重上限"两点。