Emby Emby Emby Learn
  • Emby Home
  • Video
  • Audio
  • Media Files
    • Subtitles and captions
    • Photos and images
    • Metadata and discovery
    • Libraries and media collections
    • Playback and streaming
    • Media hardware acceleration
    • Displays and AV connections
    • Live TV and recording
  1. Emby Learn
  2. Storage and server platforms
  3. Data protection
  4. Redundancy and pooling
  5. Parity protection
Search Results for

    Show / Hide Table of Contents

    Parity protection and reconstruction

    Parity stores reconstruction information that can recover specified missing data, provided the remaining blocks and parity describe a consistent generation.

    Parity protection stores information derived from data so a specified missing part can be reconstructed. It saves capacity compared with keeping a full additional copy of every block, but the reconstruction relies on the remaining information being available and consistent.

    A single-parity example is easiest to see with exclusive OR, or XOR.

    Recovering one known missing block

    Use two four-bit data values:

    A = 1010
    B = 1100
    P = A XOR B = 0110
    
    If B is missing:
    B = A XOR P = 1010 XOR 0110 = 1100
    

    The surviving data and parity reproduce B exactly. If both A and B are missing, one parity value does not provide enough independent information to recover both.

    Two data blocks produce an XOR parity block; the parity and a surviving block recover one known missing block.

    Real storage operates on larger blocks. Dual-parity layouts use two independent reconstruction relationships; simply storing the same XOR value twice would not supply the missing second equation.

    Updating data also updates parity

    Suppose A changes from 1010 to 0011 while B remains 1100. The new parity is 1111.

    A small update can calculate that new value from the old data, old parity and new data:

    New P = Old P XOR Old A XOR New A
          = 0110 XOR 1010 XOR 0011
          = 1111
    

    The storage system must coordinate data and parity writes. If interruption leaves new data with old parity, the stripe no longer represents one consistent generation. Journaling, protected caches or other implementation mechanisms can address this update problem. Their guarantees belong to the actual storage system.

    A wrong block is not a labelled missing block

    Reconstruction above assumes the system knows which block is absent. If a parity comparison instead reveals a disagreement, ordinary single parity does not necessarily identify which data or parity block is wrong.

    Checksums can provide independent content-integrity evidence. Some storage systems combine checksums with redundant copies or parity to locate and repair damage. Parity alone should not be credited with every such integrity capability.

    For an Emby library, parity can protect against the defined device-loss case while writes, rebuild work and integrity checks share I/O resources. The recovery question is whether enough correct, consistent information survives—not merely whether a device called a parity drive is present.

    See Also

    • RAID: drive redundancy and failure boundaries
    • File checksums and content verification
    • Media backups and recoverable generations

    References

    • Linux kernel: RAID arrays
    • Linux kernel: RAID parity cache and recovery
    On this Page
    2026 © EMBY LLC. Please see our terms of use and privacy policy.
    Back to Top