Sampling design
A sampling design specifies the possible samples from a population and the probability with which each sample is selected.
For storage verification, define the object version, sampling unit and selection rule: uniformly choosing C distinct blocks is different from choosing one contiguous C-block window with a random start. Uniform inclusion probability for each block alone does not make every size-C subset equally likely. [3]
With N fixed blocks and M fixed damaged positions, a uniform size-C subset has hit probability 1 - choose(N-M,C)/choose(N,C). This uses a hypergeometric model and does not require independent damage locations. Replacing the sampled set changes the design; sorting that same set changes only order under an unchanged object and completed verification. [1] [2] [3]
Hesela's cyclic example compares 460 checked blocks out of 10,000 with one constructed 100-block damaged run: uniform subsets detect it with about 99.12% probability, while one random-start window gives 5.59%. Both have expected damaged-block count 4.6. This is a counting example with perfect recognition, not measured HDD behavior or a scrub recommendation. [3]