多重选择哈希


  • 多重选择哈希之所以得名,是因为它采用了多个哈希函数的实现。
  • 从高层次来看,当有多个哈希函数时,每个项目都会映射到多个桶,因此算法设计者可以自由选择项目驻留在其中的桶。
  • 事实证明,这种自由允许算法获得比使用单个哈希函数获得的分配更平衡的分配。
  • 我们将介绍主要的算法思想和用于证明这些算法产生的分配界限的主要数学工具。
  • 我们将看到,该分析足够强大,可以承受基本模型的变化,在我们看来,这解释了这些算法在实际应用中的有效性。

多重选择哈希算法通过引用球盒模型的例子来解释。

  • 一个关于负载均衡过程推理的常用框架是“球”和“盒”框架,其中需求(键、进程、文件等)由“球”表示,资源的供应(表槽、服务器、存储单元等)由“盒”表示。
  • 在这种情况下,m 个球通过实现某些分配规则依次扔进 n 个盒中。
  • 目标是了解在过程完成后球到盒的分配情况,通常是对负载(=球的数量)在负载最大的盒中进行约束。
  • 根据此模型,球的分配是通过应用一个或多个哈希函数来执行的。
  • 这些哈希函数负责将球的唯一 ID(通常在模型中是隐式的)映射到盒的集合,通常编号为 1...n。
  • 实现一个将盒映射到球的哈希函数,而不是简单地随机抽取一个盒,在常见情况下很有用,在该常见情况下,在以后的某个时间需要从其 ID 恢复球的位置。

更新于: 2020-01-03

246 次查看

开启你的 职业生涯

通过完成课程获得认证

开始学习
广告