{
  "slug": "rack-affinity",
  "term": "Rack affinity",
  "aliases": [
    "rack affinity (failure analysis)"
  ],
  "definition": "Rack affinity ranks the rack concentration of a failure burst against same-size random bursts in the same storage cell.",
  "note": "For affected-node counts k_i per rack, the raw score R = sum k_i(k_i - 1)/2 counts same-rack pairs. Affinity is P(R_random < R) + 0.5 P(R_random = R), where the reference uniformly selects the same number of distinct nodes without replacement from the same cell. The half-tie term gives the random reference a mean affinity of 0.5; individual random bursts need not have that value. The score and affinity are distinct quantities. [ford-affinity]\n\nHigh affinity does not establish a whole-rack power or network outage. Ford et al. describe partial-rack events compatible with component batches or software changes. It is a concentration ranking, not a failure rate or a posterior probability of a shared cause. [ford-affinity]\n\nHesela's exact fictional four-node example gives same-rack affinity 5/6 for capacities [2, 2] but 3/4 for [3, 1], holding the two-node burst size fixed. In the first topology, 1 - affinity is 1/6 while the inclusive upper-tail probability is 1/3 because of ties. These are constructed arithmetic results, not fleet measurements. [hesela-affinity]\n\nA neutral affinity does not establish independent failures or low outage severity. In Hesela's same four-node cell, a burst affecting all four nodes has score 2 but affinity 1/2. Its reference contains one subset, so every score ties, even if a shared outage made every node unavailable. Record burst size and observed service impact separately; this constructed result does not determine data loss or outage duration. [hesela-affinity]",
  "related": [
    "failure-burst",
    "failure-domain",
    "crush-placement"
  ],
  "citations": [
    {
      "id": "ford-affinity",
      "title": "Ford et al., Availability in Globally Distributed Storage Systems, OSDI 2010, section 4.3, printed pages 6-7",
      "url": "https://www.usenix.org/legacy/event/osdi10/tech/full_papers/Ford.pdf",
      "accessed": "2026-11-09"
    },
    {
      "id": "hesela-affinity",
      "title": "Hesela: rack concentration, tied scores and an exact illustrative enumeration",
      "url": "https://hesela.com/analyses/storage-availability-correlated-failures/#rack-affinity",
      "accessed": "2026-11-09"
    }
  ],
  "status": "shipping",
  "advantages": [],
  "limitations": [],
  "supersedes": [],
  "supersededBy": [],
  "firstSeen": null,
  "lastSeen": null,
  "updated": "2026-11-10",
  "provenance": [
    "Full paper section 4.3 read via https://www.cs.albany.edu/~jhh/courses/readings/ford10.osdi10.availability.pdf on 2026-11-09; canonical publisher URL retained.",
    "The four-node example and inclusive-tail comparison are Hesela derivations; no Google trace was reanalyzed.",
    "Whole-cell boundary added and independently checked on 2026-11-10; conditional concentration is not an outage-severity measure."
  ]
}
