{
  "slug": "rotational-replication",
  "term": "Rotational replication",
  "aliases": [
    "rotational data replication"
  ],
  "definition": "Rotational replication stores copies of data at different angular positions so a read can select a copy with a shorter rotational wait.",
  "note": "The SR-Array research combines placement and scheduling. Extra copies trade space and update work for read opportunities; they do not remove seeking or transfer costs. The implementation required physical-layout knowledge and head-position prediction. This is a historical design, not a standard capability inferred from an HDD label. [sr-array]\n\nHesela's exact illustration holds a 12-coordinate circle at 7,200 RPM and uses continuous uniform arrival phase after positioning. Two opposite copies have a mean first-copy wait of 2.0833 ms. Two adjacent coordinates instead give 3.5301 ms, although the copy count is unchanged. These are calculated encounter times, not measurements. [geometry]\n\nWith gap fractions g_i summing to one, the mean next-copy wait is R * sum(g_i squared) / 2, where R is one revolution. Equal gaps give R/(2D) for D copies; clustering invalidates that shortcut. The downloadable code tests every nonempty subset of 12 positions against exact phase integration. [geometry]\n\nForeground updating has a different objective: encounter every copy, not the first one. Four equally spaced copies give a modeled 1.0417 ms first-copy wait but 7.2917 ms until the last-copy encounter. Transfer duration, consistency and durable acknowledgement are excluded. The same model's 50:50 read/write mean stays 4.1667 ms. [geometry]\n\nCopies on one device remain exposed to its loss. The paper treats reliability mirroring separately and tracks stale copies when propagation is deferred. Neither low encounter time nor a second physical copy proves fault-independent protection or safe read selection. [sr-array]",
  "status": "unknown",
  "advantages": [],
  "limitations": [],
  "related": [
    "hdd",
    "rotational-latency",
    "mirroring",
    "track-skew"
  ],
  "supersedes": [],
  "supersededBy": [],
  "firstSeen": null,
  "lastSeen": null,
  "citations": [
    {
      "id": "sr-array",
      "title": "Yu et al.: Trading Capacity for Performance in a Disk Array, OSDI 2000, pp. 243-258, sections 2.2 and 3.2-3.4",
      "url": "https://www.usenix.org/legacy/events/osdi2000/full_papers/yugum/yugum.pdf",
      "accessed": "2026-11-10"
    },
    {
      "id": "geometry",
      "title": "Hesela: rotational placement geometry, exact derivation, generated rows and exhaustive tests",
      "url": "https://hesela.dev/research/rotational-replication/README.md",
      "accessed": "2026-11-10"
    }
  ],
  "updated": "2026-11-10",
  "provenance": [
    "OSDI 2000 is the reviewed publication, not a claimed invention date.",
    "Synthetic exact arithmetic is not a replication of the paper's hardware or trace experiments.",
    "No current product support, fleet performance or statistical significance is inferred."
  ]
}
