1 <meta http-equiv=
"Content-Type" content=
"text/html; charset=utf-8"/>
2 <link rel=
"stylesheet" href=
"style.css" type=
"text/css"/>
3 <script src=
"code.js" type=
"text/javascript"></script>
5 <h1>Change Block Tracking
</h1>
8 Two common approaches to tracking changed blocks:
12 <th style=
"width: 20%">Approach
</th>
16 <td style=
"text-align:center; vertical-align:top;">Generation tag
</td>
19 <li>Monotonically increasing tag tracked for each
21 <li>Set of changes since a point in time is all clusters with
22 generation id larger than the value at that point
</li>
23 <li>Multiple points in time tracked by same amount of metadata
</li>
28 <td style=
"text-align:center; vertical-align:top;">Dirty bitmap
</td>
31 <li>Bitmap that gets updated with each changed cluster
</li>
32 <li>Less metadata storage required for all changes since a
33 single point in time
</li>
34 <li>Multiple bitmaps required to track changes since multiple
40 <p>Both approaches also have to balance granularity: more precision on
41 what changed requires more metadata but can produce smaller
42 incremental backups.
</p>