摘要

  1.适用场合

  2.算法简介

  3.代码例子

  4.Spark RangePartitioner 中的应用(待补充)

内容

1.适用场合:从包含n个项目的集合S中选取k个样本,其中n为一很大或未知的数量,尤其适用于不能把所有n个项目都存放到主内存的情况。

2.算法简介:

  1. 从S中抽取首k项放入「水塘」中
  2. 对于每一个S[i]项(i ≥ k):
  3. 随机产生一个范围0到i的整数r
  4. 若 r < k 则把水塘中的第r项换成S[i]项

  深入:papers

 

3.代码例子:

蓄水池(Reservoir_sampling)抽样算法简记-LMLPHP

4.Spark RangePartitioner 中的应用(待补充)  

    

05-11 09:21