[cinder] Idea: CBT interface for backup drivers
Hi all, I would like to suggest improving Cinder's incremental backup efficiency by introducing a Changed Block Tracking (CBT) interface. Currently, incremental backups read the full volume and rely on chunk-level SHA256 hashing to detect changes. Even when only a small portion of the volume has changed, a full scan is still required, which impacts performance and resource usage. Some backends like Ceph (rbd diff) and NetApp (SnapDiff) already have native APIs for tracking block-level changes. I believe it is worth exploring a standardized CBT interface at the backup driver level to take advantage of these capabilities—with a fallback to the current hashing method for drivers that do not support it. I am interested in exploring this further and would appreciate your thoughts on this approach or if there have been similar discussions in the past. Thanks, inyong hong(hong-p)
Hey inyong, You are more than welcome to create a specification for us to discuss the details. This is where you can start[1]. Next week we're going to have a Virtual PTG (projects team gathering)[2], where you can bring the topic to the table so we can discuss You can açso find us on the #cinder channel on OFTC. Erlon _____________________ [1] https://wiki.openstack.org/wiki/Cinder/how-to-contribute-new-feature [2] https://ptg.openinfra.org/ Em ter., 14 de abr. de 2026 às 10:49, 홍인용 <inyong.hong@samsung.com> escreveu:
Hi all,
I would like to suggest improving Cinder's incremental backup efficiency by introducing a Changed Block Tracking (CBT) interface.
Currently, incremental backups read the full volume and rely on chunk-level SHA256 hashing to detect changes. Even when only a small portion of the volume has changed, a full scan is still required, which impacts performance and resource usage.
Some backends like Ceph (rbd diff) and NetApp (SnapDiff) already have native APIs for tracking block-level changes. I believe it is worth exploring a standardized CBT interface at the backup driver level to take advantage of these capabilities—with a fallback to the current hashing method for drivers that do not support it.
I am interested in exploring this further and would appreciate your thoughts on this approach or if there have been similar discussions in the past.
Thanks, inyong hong(hong-p)
Hey all, Em ter., 14 de abr. de 2026 às 10:49, 홍인용 <inyong.hong@samsung.com> escreveu: I would like to suggest improving Cinder's incremental backup efficiency by introducing a Changed Block Tracking (CBT) interface. Currently, incremental backups read the full volume and rely on chunk-level SHA256 hashing to detect changes. Even when only a small portion of the volume has changed, a full scan is still required, which impacts performance and resource usage. Some backends like Ceph (rbd diff) and NetApp (SnapDiff) already have native APIs for tracking block-level changes. I believe it is worth exploring a standardized CBT interface at the backup driver level to take advantage of these capabilities—with a fallback to the current hashing method for drivers that do not support it. I am interested in exploring this further and would appreciate your thoughts on this approach or if there have been similar discussions in the past. This is a GREAT idea! I proposed the same thing on the "consumer side", Cinder CSI. See https://github.com/kubernetes/cloud-provider-openstack/issues/3082 Regards Christian
participants (3)
-
Christian Rohmann
-
Erlon Cruz
-
홍인용