Epochs are a mechanism to decrease vDisk repair time. It works by periodically flushing (for example, every 4 hours) a changed block bitmap of an online vDisk on the backend. If the vDisk needs to be repaired, the latest common epoch between the master and the slave is determined, and then all subsequent epochs on the master are collapsed onto the latest common epoch bitmap. The resulting bitmap is effectively a diff bitmap, so only the blocks indicated into that bitmap need to be re-synchronized. If any error occurs during the vDisk repair, the epochs optimization is disabled, and the vDisk repair switches to full re-synchronization.
To enable epochs for a data store:
- Go to your Control Panel > Admin > Settings menu.
- Click the Data Stores icon. You'll see the list of data stores on your system.
- Click the Actions button next to the store you want to change, then select Edit.
- On the following page, move the Epoch slider to the right to enable epochs.
- Click Save Data Store.
When testing repair performance with and without epochs, 20% of a disk with the following parameters was rewritten:
- Disks: 5 GB, 50 GB, 500 GB
- Disks: 5 GB, 50 GB, 500 GB
The test results are provided in the table below:
| With epochs | Without epochs |
---|
SSD 5 GB | 0:52 | 3:02 |
SSD 50 GB | 1:57 | 23:57 |
SSD 500 GB | 14:14 | 4:00:02 |
HDD 5 GB | 1:12 | 3:48 |
HDD 50 GB | 1:47 | 26:33 |
HDD 500 GB | 14:20 | 6:21:57 |
NVMe 5 GB | 1:14 | 5:21 |
NVMe 50 GB | 3:35 | 44:49 |