SlideShare a Scribd company logo
ChangeBlock
Tracking(CBT)
© 2023 StoneFly, Inc. | All rights reserved.
A technical overview
Absract
Change Block Tracking or Change Tracking or CBT is making a record or journal of
which blocks of a storage object were changed by I/O. A storage object is any logical-
ly contiguous space used for storage of data.
Now you need to keep in mind that CBT doesn’t keep track of what data was written,
it only logs which areas of the object were written. Such track can be used for various
applications, primarily for backup and restore. Usually such tracking is used to know
what blocks have changed during a given time frame.
1
CBT : A Technical Review
Backup uses snapshot technologies? So where does CBT come in
all of this?
Backup technologies rely on snapshot to make the backup consistent, however it’s
very tedious to take backups of the entire object at every backup cycle. So what you
do is either you use incremental or differential snapshots.
Using incremental snapshots, one can know what has changed between two snap-
shots. Backup applications use this information to know what blocks of the object to
backup. Let’s look at the following example of backup using snapshots.
2
At the first backup cycle, we take a snapshot of the device and we take a full backup
using the snapshot. At the next backup cycle we take an incremental snapshot of the
device. This snapshot logic is already provided by the block title. Next we calculate
what has changed between the two snapshots and take the backup of only those
CBT : A Technical Review
We can notice here that:
1) The snapshot has to exist not only for the period of backup, but for over two
backup cycles. It needs to exist for more than two backup cycles.
2) Production I/O has always the need to go through this snapshot layer. Meaning
that if you have the snapshot in the I/O path, then every I/O that you do may translate
into more than one read/write based on the type of the snapshot.
3) These snapshots have to live for the longer time and the size of the snapshot will
keep growing as much as you do I/O to it. When you want to delete the snapshot, it
will be time consuming and tedious because these snapshots are so large that it
takes time to manage all the data in the snapshot areas.
The effect of point no. 2&3 is that they are multiplied when the backup interval is
large. Imagine that your backup interval is read/write, now in case of redirect on write
snapshots it would mean that you are merging the entire reads of data from the data
area onto the base device.
3
CBT : A Technical Review
Will all these points degrade the performance of the produc�on
system?
That’s true and it’s actually one of the problems that needs to be solved. Backup
applications used to relay on snapshots to know what has changed but CBT provides
them with information out of band. These backup applications don’t need to keep
the snapshots alive after the backup is complete.
To take a backup you need to know what has changed between two snapshots,
otherwise you need to keep taking full backup every time, but for this to happen a
new tracking instant has to be started atomically at the creation of the snapshot.
However changing or integrating with the existing snapshot technology is difficult
and is something that’s not necessary.
This problem is easily solved by using two simultaneous tracking instances that over-
lap across the snapshot creation operation.
How Backup with CBT works
4
CBT : A Technical Review
For Example this is the timeline that is given here as shown in the graph. Starting
from left to right, you first start tracking the instance “T1-0” and you take a snapshot
(S-0) of the device followed by a full backup. You always start with a full backup. As
soon as your backup is done you delete the snapshot. This is because you already
have a tracking out of band in place.
In the next backup cycle, which is maybe a day later, a month, a week, or else, you
start another tracking instance which is let’s say “TI-1” and then you follow it with
another snapshot (S-1). Now after taking the snapshot you stop tracking instance
“TI-0” which you have started a week before. Now the tracking instance TI-0 has all
changes that has happened to that storage object in that particular week.
You use that instance “TI-0” to take an incremental backup, so backup has to know
which blocks have changed so it can just read that information and take the backup.
Once your backup is complete, you do not need that particular snapshot anymore.
You can see that the snapshot only exists till the time the backup needs it and it
doesn’t need to live anymore. Essentially there are no incremental snapshots, there’s
just one snapshot alive that you need for each backup.
5
CBT : A Technical Review
Components that encompass the CBT
There are two major components that are required for CBT:
1) The hook or the filter. What we mean by hook is something that allows you
to take a peek at the I/O on the storage object. Whenever an application to the I/O to
that particular storage object, you need to know which block of the storage object it’s
touching.
The most important requirement for such a hook is that it has to be fast, why?
Because the problem that we are trying to solve by using CBT is to lessen the delay
on the I/O in case of snapshots, and the same needs to hold to here. This is actually
easily solved if you know you have an intermediate fast cache that’s available there
for the hook to record all the tracking. This tracking Data can be asynchronously
returned to Persistent Record later. Also the hook isn’t concerned with whether the
I/O is successful or not.
6
CBT : A Technical Review
2) Persistent Record. It’s not necessary that you have this record on disk, it can
be in memory record as well or it can be something like a map disk cover. The format
of this persistent record should be in such a way that it’s easily consumable. For
instance you have various formats, you have a lock structured format where the track-
ing data is appended to the end of the record. However it may result in more burden.
For example to know what has changed between a given time frame you need to go
to the entire log to figure out the areas. VMware uses such a structure because it uses
CTK file. Another format of Persistent Record is bitmap which images every bit it
represents and logical extent of the storage object. Built bit is set if the logical extent
is partially or fully return. If the logical extent is 256 kb even if you write 4 kb of that
particular extent, the block is considered as return. This essentially avoids having
large bitmap sizes. A multiple bitmap can represent multiple tracking instances, so
it’s relatively easy to consume.
Can opera�ons like merging of bitmaps be performed?
Merging of bitmaps is another operation that can be performed. If you have one
tracking instance represented by bitmap and another tracking instance represented
by another bitmap, and you want to know what data has changed across both
instances, you just need to merge the data and you get the needed data.
Things to keep in mind when designing CBT
One of the most important components of CBT is the hook or filter. And the problem
that needs solving is performance degradation in production I/O. The hook has to be
fast enough so as to not degrade the I/O performance. Most important than that it
has to capture all the I/O paths. You can never miss tracking one I/O path to that
particular block, or device or storage object because if you do the tracking data
becomes inconsistent, and it results in a corrupted backup. Moreover, the corruption
7
CBT : A Technical Review
message will appear during restore, which is much later in the time frame. You won’t
know that during backup, it’s only during the restore and you don’t want that hap-
pening.
Scenarios that come into play with CBT
Some key scenarios that come into mind is during identification of the storage
object. Basically your backup application and your tracking filter or the tracking soft-
ware, they have to be in consensus on how to identify storage object. It’s simple. For
instance if you are tracking SAN (Storage Area Network) devices then SCSI (Small
Computer System Interface) ID is one identifier.
Another Scenario is reboot. Sometimes a device is accessible in an early stage of the
boot. If you are tracking that device, and since one of our goals is not to miss any I/O,
your tracking filter or hook needs to be in place before that. Also during shutdown no
writes or I/O should be missed. If you are unable to capture or track all the I/O’s
during shutdown and boot, you take a full backup and you start a new tracking
instance.
Another scenario is device being renamed. Of course if you’re using the unique iden-
tifier you’re not in so much of trouble. Linux also allows for the storage object to be
offline and come back online as a separate device. CBT needs to know that device it
was tracking is now coming up as a separate name.
www.stonefly.com
2865, 2869 and 2879 Grove Way,
Castro Valley, CA 94546 USA.
+1 (510) 265-1616

More Related Content

Similar to Exploring Change Block Tracking (CBT): A Game Changer for IT Professionals

Questions Log: Dynamic Cubes – Set to Retire Transformer?
Questions Log: Dynamic Cubes – Set to Retire Transformer?Questions Log: Dynamic Cubes – Set to Retire Transformer?
Questions Log: Dynamic Cubes – Set to Retire Transformer?
Senturus
 
Workshop - The Little Pattern That Could.pdf
Workshop - The Little Pattern That Could.pdfWorkshop - The Little Pattern That Could.pdf
Workshop - The Little Pattern That Could.pdf
TobiasGoeschel
 
RxJava pour Android : présentation lors du GDG Android Montréal
RxJava pour Android : présentation lors du GDG Android MontréalRxJava pour Android : présentation lors du GDG Android Montréal
RxJava pour Android : présentation lors du GDG Android Montréal
Sidereo
 
Redo and Rollback
Redo and RollbackRedo and Rollback
Redo and Rollback
Tubaahin10
 
Analyze a SVC, STORWIZE metro/ global mirror performance problem-v58-20150818...
Analyze a SVC, STORWIZE metro/ global mirror performance problem-v58-20150818...Analyze a SVC, STORWIZE metro/ global mirror performance problem-v58-20150818...
Analyze a SVC, STORWIZE metro/ global mirror performance problem-v58-20150818...
Michael Pirker
 
A practical look at how to build & run IoT business logic
A practical look at how to build & run IoT business logicA practical look at how to build & run IoT business logic
A practical look at how to build & run IoT business logic
Veselin Pizurica
 
Monitor(karthika)
Monitor(karthika)Monitor(karthika)
Monitor(karthika)
Nagarajan
 
IRJET- A Futuristic Cache Replacement using Hybrid Regression
IRJET-  	  A Futuristic Cache Replacement using Hybrid RegressionIRJET-  	  A Futuristic Cache Replacement using Hybrid Regression
IRJET- A Futuristic Cache Replacement using Hybrid Regression
IRJET Journal
 
BNFO-501.DS_Store__MACOSXBNFO-501._.DS_StoreBNFO-501.docx
BNFO-501.DS_Store__MACOSXBNFO-501._.DS_StoreBNFO-501.docxBNFO-501.DS_Store__MACOSXBNFO-501._.DS_StoreBNFO-501.docx
BNFO-501.DS_Store__MACOSXBNFO-501._.DS_StoreBNFO-501.docx
hartrobert670
 
Backy - VM backup beyond bacula
Backy - VM backup beyond baculaBacky - VM backup beyond bacula
Backy - VM backup beyond bacula
Christian Theune
 
Rational team concert (RTC) tips
Rational team concert (RTC) tipsRational team concert (RTC) tips
Rational team concert (RTC) tips
Raghunath (Gautam) Soman
 
Infrastructure as Code, Theory Crash Course
Infrastructure as Code, Theory Crash CourseInfrastructure as Code, Theory Crash Course
Infrastructure as Code, Theory Crash Course
Dr. Sven Balnojan
 
Twan Koot - Beyond the % usage, an in-depth look into monitoring
Twan Koot - Beyond the % usage, an in-depth look into monitoringTwan Koot - Beyond the % usage, an in-depth look into monitoring
Twan Koot - Beyond the % usage, an in-depth look into monitoring
Neotys_Partner
 
Netw 208 Success Begins / snaptutorial.com
Netw 208  Success Begins / snaptutorial.comNetw 208  Success Begins / snaptutorial.com
Netw 208 Success Begins / snaptutorial.com
WilliamsTaylor65
 
Analytics tools and Instruments
Analytics tools and InstrumentsAnalytics tools and Instruments
Analytics tools and Instruments
Krunal Soni
 
Computer architecture
Computer architectureComputer architecture
Computer architecture
PrabhanshuKatiyar1
 
Oversimplified CA
Oversimplified CAOversimplified CA
Oversimplified CA
PrabhanshuKatiyar1
 
Performant Django - Ara Anjargolian
Performant Django - Ara AnjargolianPerformant Django - Ara Anjargolian
Performant Django - Ara Anjargolian
Hakka Labs
 
@SIMUL8 Virtual User Group, September: Brian Harrington, Less is More
@SIMUL8 Virtual User Group, September: Brian Harrington, Less is More@SIMUL8 Virtual User Group, September: Brian Harrington, Less is More
@SIMUL8 Virtual User Group, September: Brian Harrington, Less is More
SIMUL8 Corporation
 
Observability: Beyond the Three Pillars with Spring
Observability: Beyond the Three Pillars with SpringObservability: Beyond the Three Pillars with Spring
Observability: Beyond the Three Pillars with Spring
VMware Tanzu
 

Similar to Exploring Change Block Tracking (CBT): A Game Changer for IT Professionals (20)

Questions Log: Dynamic Cubes – Set to Retire Transformer?
Questions Log: Dynamic Cubes – Set to Retire Transformer?Questions Log: Dynamic Cubes – Set to Retire Transformer?
Questions Log: Dynamic Cubes – Set to Retire Transformer?
 
Workshop - The Little Pattern That Could.pdf
Workshop - The Little Pattern That Could.pdfWorkshop - The Little Pattern That Could.pdf
Workshop - The Little Pattern That Could.pdf
 
RxJava pour Android : présentation lors du GDG Android Montréal
RxJava pour Android : présentation lors du GDG Android MontréalRxJava pour Android : présentation lors du GDG Android Montréal
RxJava pour Android : présentation lors du GDG Android Montréal
 
Redo and Rollback
Redo and RollbackRedo and Rollback
Redo and Rollback
 
Analyze a SVC, STORWIZE metro/ global mirror performance problem-v58-20150818...
Analyze a SVC, STORWIZE metro/ global mirror performance problem-v58-20150818...Analyze a SVC, STORWIZE metro/ global mirror performance problem-v58-20150818...
Analyze a SVC, STORWIZE metro/ global mirror performance problem-v58-20150818...
 
A practical look at how to build & run IoT business logic
A practical look at how to build & run IoT business logicA practical look at how to build & run IoT business logic
A practical look at how to build & run IoT business logic
 
Monitor(karthika)
Monitor(karthika)Monitor(karthika)
Monitor(karthika)
 
IRJET- A Futuristic Cache Replacement using Hybrid Regression
IRJET-  	  A Futuristic Cache Replacement using Hybrid RegressionIRJET-  	  A Futuristic Cache Replacement using Hybrid Regression
IRJET- A Futuristic Cache Replacement using Hybrid Regression
 
BNFO-501.DS_Store__MACOSXBNFO-501._.DS_StoreBNFO-501.docx
BNFO-501.DS_Store__MACOSXBNFO-501._.DS_StoreBNFO-501.docxBNFO-501.DS_Store__MACOSXBNFO-501._.DS_StoreBNFO-501.docx
BNFO-501.DS_Store__MACOSXBNFO-501._.DS_StoreBNFO-501.docx
 
Backy - VM backup beyond bacula
Backy - VM backup beyond baculaBacky - VM backup beyond bacula
Backy - VM backup beyond bacula
 
Rational team concert (RTC) tips
Rational team concert (RTC) tipsRational team concert (RTC) tips
Rational team concert (RTC) tips
 
Infrastructure as Code, Theory Crash Course
Infrastructure as Code, Theory Crash CourseInfrastructure as Code, Theory Crash Course
Infrastructure as Code, Theory Crash Course
 
Twan Koot - Beyond the % usage, an in-depth look into monitoring
Twan Koot - Beyond the % usage, an in-depth look into monitoringTwan Koot - Beyond the % usage, an in-depth look into monitoring
Twan Koot - Beyond the % usage, an in-depth look into monitoring
 
Netw 208 Success Begins / snaptutorial.com
Netw 208  Success Begins / snaptutorial.comNetw 208  Success Begins / snaptutorial.com
Netw 208 Success Begins / snaptutorial.com
 
Analytics tools and Instruments
Analytics tools and InstrumentsAnalytics tools and Instruments
Analytics tools and Instruments
 
Computer architecture
Computer architectureComputer architecture
Computer architecture
 
Oversimplified CA
Oversimplified CAOversimplified CA
Oversimplified CA
 
Performant Django - Ara Anjargolian
Performant Django - Ara AnjargolianPerformant Django - Ara Anjargolian
Performant Django - Ara Anjargolian
 
@SIMUL8 Virtual User Group, September: Brian Harrington, Less is More
@SIMUL8 Virtual User Group, September: Brian Harrington, Less is More@SIMUL8 Virtual User Group, September: Brian Harrington, Less is More
@SIMUL8 Virtual User Group, September: Brian Harrington, Less is More
 
Observability: Beyond the Three Pillars with Spring
Observability: Beyond the Three Pillars with SpringObservability: Beyond the Three Pillars with Spring
Observability: Beyond the Three Pillars with Spring
 

More from MaryJWilliams2

Veeam Replication in Azure Cloud: Ensuring Business Continuity and Data Prote...
Veeam Replication in Azure Cloud: Ensuring Business Continuity and Data Prote...Veeam Replication in Azure Cloud: Ensuring Business Continuity and Data Prote...
Veeam Replication in Azure Cloud: Ensuring Business Continuity and Data Prote...
MaryJWilliams2
 
Eyes Everywhere: The Power of Body-Worn and Dashboard Cameras
Eyes Everywhere: The Power of Body-Worn and Dashboard CamerasEyes Everywhere: The Power of Body-Worn and Dashboard Cameras
Eyes Everywhere: The Power of Body-Worn and Dashboard Cameras
MaryJWilliams2
 
Guarding Against Ransomware: Strategies for Robust Data Protection
Guarding Against Ransomware: Strategies for Robust Data ProtectionGuarding Against Ransomware: Strategies for Robust Data Protection
Guarding Against Ransomware: Strategies for Robust Data Protection
MaryJWilliams2
 
Data Protection and Disaster Recovery Solutions: Ensuring Business Continuity
Data Protection and Disaster Recovery Solutions: Ensuring Business ContinuityData Protection and Disaster Recovery Solutions: Ensuring Business Continuity
Data Protection and Disaster Recovery Solutions: Ensuring Business Continuity
MaryJWilliams2
 
Securing Your Future: Cloud-Based Data Protection Solutions
Securing Your Future: Cloud-Based Data Protection SolutionsSecuring Your Future: Cloud-Based Data Protection Solutions
Securing Your Future: Cloud-Based Data Protection Solutions
MaryJWilliams2
 
Securing the Future: A Guide to Cloud-Based Data Protection
Securing the Future: A Guide to Cloud-Based Data ProtectionSecuring the Future: A Guide to Cloud-Based Data Protection
Securing the Future: A Guide to Cloud-Based Data Protection
MaryJWilliams2
 
Exploring Veeam Backup & Replication for Seamless Business Continuity
Exploring Veeam Backup & Replication for Seamless Business ContinuityExploring Veeam Backup & Replication for Seamless Business Continuity
Exploring Veeam Backup & Replication for Seamless Business Continuity
MaryJWilliams2
 
Integrating OMS and Azure Security Center for Enhanced Cloud Security
Integrating OMS and Azure Security Center for Enhanced Cloud SecurityIntegrating OMS and Azure Security Center for Enhanced Cloud Security
Integrating OMS and Azure Security Center for Enhanced Cloud Security
MaryJWilliams2
 
Erasure Coding: Revolutionizing Data Durability and Storage Efficiency
Erasure Coding: Revolutionizing Data Durability and Storage EfficiencyErasure Coding: Revolutionizing Data Durability and Storage Efficiency
Erasure Coding: Revolutionizing Data Durability and Storage Efficiency
MaryJWilliams2
 
Efficient Backup and Archiving with StoneFly Smart Cloud Gateway in a Hybrid ...
Efficient Backup and Archiving with StoneFly Smart Cloud Gateway in a Hybrid ...Efficient Backup and Archiving with StoneFly Smart Cloud Gateway in a Hybrid ...
Efficient Backup and Archiving with StoneFly Smart Cloud Gateway in a Hybrid ...
MaryJWilliams2
 
Maximizing Cloud Security and Efficiency: A Guide to Integrating OMS and Azur...
Maximizing Cloud Security and Efficiency: A Guide to Integrating OMS and Azur...Maximizing Cloud Security and Efficiency: A Guide to Integrating OMS and Azur...
Maximizing Cloud Security and Efficiency: A Guide to Integrating OMS and Azur...
MaryJWilliams2
 
Unlocking Efficiency: Exploring Change Block Tracking in Data Management
Unlocking Efficiency: Exploring Change Block Tracking in Data ManagementUnlocking Efficiency: Exploring Change Block Tracking in Data Management
Unlocking Efficiency: Exploring Change Block Tracking in Data Management
MaryJWilliams2
 
Mastering Backup and Disaster Recovery: Ensuring Data Continuity and Resilience
Mastering Backup and Disaster Recovery: Ensuring Data Continuity and ResilienceMastering Backup and Disaster Recovery: Ensuring Data Continuity and Resilience
Mastering Backup and Disaster Recovery: Ensuring Data Continuity and Resilience
MaryJWilliams2
 
Streamlining Backup: Enhancing Data Protection with Backup Appliances
Streamlining Backup: Enhancing Data Protection with Backup AppliancesStreamlining Backup: Enhancing Data Protection with Backup Appliances
Streamlining Backup: Enhancing Data Protection with Backup Appliances
MaryJWilliams2
 
Navigating the Cloud: Empowering Enterprises with Cloud Solutions
Navigating the Cloud: Empowering Enterprises with Cloud SolutionsNavigating the Cloud: Empowering Enterprises with Cloud Solutions
Navigating the Cloud: Empowering Enterprises with Cloud Solutions
MaryJWilliams2
 
Safeguarding Business Continuity: Insights into Backup and Disaster Recovery ...
Safeguarding Business Continuity: Insights into Backup and Disaster Recovery ...Safeguarding Business Continuity: Insights into Backup and Disaster Recovery ...
Safeguarding Business Continuity: Insights into Backup and Disaster Recovery ...
MaryJWilliams2
 
Breaking Boundaries: Overcoming Traditional Backup Limitations with Innovativ...
Breaking Boundaries: Overcoming Traditional Backup Limitations with Innovativ...Breaking Boundaries: Overcoming Traditional Backup Limitations with Innovativ...
Breaking Boundaries: Overcoming Traditional Backup Limitations with Innovativ...
MaryJWilliams2
 
Exploring Software-Defined Storage in Digital Transformation
Exploring Software-Defined Storage in Digital TransformationExploring Software-Defined Storage in Digital Transformation
Exploring Software-Defined Storage in Digital Transformation
MaryJWilliams2
 
Shielding Data Assets: Exploring Data Protection and Disaster Recovery Strate...
Shielding Data Assets: Exploring Data Protection and Disaster Recovery Strate...Shielding Data Assets: Exploring Data Protection and Disaster Recovery Strate...
Shielding Data Assets: Exploring Data Protection and Disaster Recovery Strate...
MaryJWilliams2
 
Unveiling the Evolution: Proprietary Hardware to Agile Software-Defined Solut...
Unveiling the Evolution: Proprietary Hardware to Agile Software-Defined Solut...Unveiling the Evolution: Proprietary Hardware to Agile Software-Defined Solut...
Unveiling the Evolution: Proprietary Hardware to Agile Software-Defined Solut...
MaryJWilliams2
 

More from MaryJWilliams2 (20)

Veeam Replication in Azure Cloud: Ensuring Business Continuity and Data Prote...
Veeam Replication in Azure Cloud: Ensuring Business Continuity and Data Prote...Veeam Replication in Azure Cloud: Ensuring Business Continuity and Data Prote...
Veeam Replication in Azure Cloud: Ensuring Business Continuity and Data Prote...
 
Eyes Everywhere: The Power of Body-Worn and Dashboard Cameras
Eyes Everywhere: The Power of Body-Worn and Dashboard CamerasEyes Everywhere: The Power of Body-Worn and Dashboard Cameras
Eyes Everywhere: The Power of Body-Worn and Dashboard Cameras
 
Guarding Against Ransomware: Strategies for Robust Data Protection
Guarding Against Ransomware: Strategies for Robust Data ProtectionGuarding Against Ransomware: Strategies for Robust Data Protection
Guarding Against Ransomware: Strategies for Robust Data Protection
 
Data Protection and Disaster Recovery Solutions: Ensuring Business Continuity
Data Protection and Disaster Recovery Solutions: Ensuring Business ContinuityData Protection and Disaster Recovery Solutions: Ensuring Business Continuity
Data Protection and Disaster Recovery Solutions: Ensuring Business Continuity
 
Securing Your Future: Cloud-Based Data Protection Solutions
Securing Your Future: Cloud-Based Data Protection SolutionsSecuring Your Future: Cloud-Based Data Protection Solutions
Securing Your Future: Cloud-Based Data Protection Solutions
 
Securing the Future: A Guide to Cloud-Based Data Protection
Securing the Future: A Guide to Cloud-Based Data ProtectionSecuring the Future: A Guide to Cloud-Based Data Protection
Securing the Future: A Guide to Cloud-Based Data Protection
 
Exploring Veeam Backup & Replication for Seamless Business Continuity
Exploring Veeam Backup & Replication for Seamless Business ContinuityExploring Veeam Backup & Replication for Seamless Business Continuity
Exploring Veeam Backup & Replication for Seamless Business Continuity
 
Integrating OMS and Azure Security Center for Enhanced Cloud Security
Integrating OMS and Azure Security Center for Enhanced Cloud SecurityIntegrating OMS and Azure Security Center for Enhanced Cloud Security
Integrating OMS and Azure Security Center for Enhanced Cloud Security
 
Erasure Coding: Revolutionizing Data Durability and Storage Efficiency
Erasure Coding: Revolutionizing Data Durability and Storage EfficiencyErasure Coding: Revolutionizing Data Durability and Storage Efficiency
Erasure Coding: Revolutionizing Data Durability and Storage Efficiency
 
Efficient Backup and Archiving with StoneFly Smart Cloud Gateway in a Hybrid ...
Efficient Backup and Archiving with StoneFly Smart Cloud Gateway in a Hybrid ...Efficient Backup and Archiving with StoneFly Smart Cloud Gateway in a Hybrid ...
Efficient Backup and Archiving with StoneFly Smart Cloud Gateway in a Hybrid ...
 
Maximizing Cloud Security and Efficiency: A Guide to Integrating OMS and Azur...
Maximizing Cloud Security and Efficiency: A Guide to Integrating OMS and Azur...Maximizing Cloud Security and Efficiency: A Guide to Integrating OMS and Azur...
Maximizing Cloud Security and Efficiency: A Guide to Integrating OMS and Azur...
 
Unlocking Efficiency: Exploring Change Block Tracking in Data Management
Unlocking Efficiency: Exploring Change Block Tracking in Data ManagementUnlocking Efficiency: Exploring Change Block Tracking in Data Management
Unlocking Efficiency: Exploring Change Block Tracking in Data Management
 
Mastering Backup and Disaster Recovery: Ensuring Data Continuity and Resilience
Mastering Backup and Disaster Recovery: Ensuring Data Continuity and ResilienceMastering Backup and Disaster Recovery: Ensuring Data Continuity and Resilience
Mastering Backup and Disaster Recovery: Ensuring Data Continuity and Resilience
 
Streamlining Backup: Enhancing Data Protection with Backup Appliances
Streamlining Backup: Enhancing Data Protection with Backup AppliancesStreamlining Backup: Enhancing Data Protection with Backup Appliances
Streamlining Backup: Enhancing Data Protection with Backup Appliances
 
Navigating the Cloud: Empowering Enterprises with Cloud Solutions
Navigating the Cloud: Empowering Enterprises with Cloud SolutionsNavigating the Cloud: Empowering Enterprises with Cloud Solutions
Navigating the Cloud: Empowering Enterprises with Cloud Solutions
 
Safeguarding Business Continuity: Insights into Backup and Disaster Recovery ...
Safeguarding Business Continuity: Insights into Backup and Disaster Recovery ...Safeguarding Business Continuity: Insights into Backup and Disaster Recovery ...
Safeguarding Business Continuity: Insights into Backup and Disaster Recovery ...
 
Breaking Boundaries: Overcoming Traditional Backup Limitations with Innovativ...
Breaking Boundaries: Overcoming Traditional Backup Limitations with Innovativ...Breaking Boundaries: Overcoming Traditional Backup Limitations with Innovativ...
Breaking Boundaries: Overcoming Traditional Backup Limitations with Innovativ...
 
Exploring Software-Defined Storage in Digital Transformation
Exploring Software-Defined Storage in Digital TransformationExploring Software-Defined Storage in Digital Transformation
Exploring Software-Defined Storage in Digital Transformation
 
Shielding Data Assets: Exploring Data Protection and Disaster Recovery Strate...
Shielding Data Assets: Exploring Data Protection and Disaster Recovery Strate...Shielding Data Assets: Exploring Data Protection and Disaster Recovery Strate...
Shielding Data Assets: Exploring Data Protection and Disaster Recovery Strate...
 
Unveiling the Evolution: Proprietary Hardware to Agile Software-Defined Solut...
Unveiling the Evolution: Proprietary Hardware to Agile Software-Defined Solut...Unveiling the Evolution: Proprietary Hardware to Agile Software-Defined Solut...
Unveiling the Evolution: Proprietary Hardware to Agile Software-Defined Solut...
 

Recently uploaded

Demystifying Knowledge Management through Storytelling
Demystifying Knowledge Management through StorytellingDemystifying Knowledge Management through Storytelling
Demystifying Knowledge Management through Storytelling
Enterprise Knowledge
 
inQuba Webinar Mastering Customer Journey Management with Dr Graham Hill
inQuba Webinar Mastering Customer Journey Management with Dr Graham HillinQuba Webinar Mastering Customer Journey Management with Dr Graham Hill
inQuba Webinar Mastering Customer Journey Management with Dr Graham Hill
LizaNolte
 
"Choosing proper type of scaling", Olena Syrota
"Choosing proper type of scaling", Olena Syrota"Choosing proper type of scaling", Olena Syrota
"Choosing proper type of scaling", Olena Syrota
Fwdays
 
"Frontline Battles with DDoS: Best practices and Lessons Learned", Igor Ivaniuk
"Frontline Battles with DDoS: Best practices and Lessons Learned",  Igor Ivaniuk"Frontline Battles with DDoS: Best practices and Lessons Learned",  Igor Ivaniuk
"Frontline Battles with DDoS: Best practices and Lessons Learned", Igor Ivaniuk
Fwdays
 
9 CEO's who hit $100m ARR Share Their Top Growth Tactics Nathan Latka, Founde...
9 CEO's who hit $100m ARR Share Their Top Growth Tactics Nathan Latka, Founde...9 CEO's who hit $100m ARR Share Their Top Growth Tactics Nathan Latka, Founde...
9 CEO's who hit $100m ARR Share Their Top Growth Tactics Nathan Latka, Founde...
saastr
 
The Microsoft 365 Migration Tutorial For Beginner.pptx
The Microsoft 365 Migration Tutorial For Beginner.pptxThe Microsoft 365 Migration Tutorial For Beginner.pptx
The Microsoft 365 Migration Tutorial For Beginner.pptx
operationspcvita
 
JavaLand 2024: Application Development Green Masterplan
JavaLand 2024: Application Development Green MasterplanJavaLand 2024: Application Development Green Masterplan
JavaLand 2024: Application Development Green Masterplan
Miro Wengner
 
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdfHow to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
Chart Kalyan
 
GraphRAG for LifeSciences Hands-On with the Clinical Knowledge Graph
GraphRAG for LifeSciences Hands-On with the Clinical Knowledge GraphGraphRAG for LifeSciences Hands-On with the Clinical Knowledge Graph
GraphRAG for LifeSciences Hands-On with the Clinical Knowledge Graph
Neo4j
 
Skybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoptionSkybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoption
Tatiana Kojar
 
Fueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte WebinarFueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte Webinar
Zilliz
 
Nordic Marketo Engage User Group_June 13_ 2024.pptx
Nordic Marketo Engage User Group_June 13_ 2024.pptxNordic Marketo Engage User Group_June 13_ 2024.pptx
Nordic Marketo Engage User Group_June 13_ 2024.pptx
MichaelKnudsen27
 
Christine's Supplier Sourcing Presentaion.pptx
Christine's Supplier Sourcing Presentaion.pptxChristine's Supplier Sourcing Presentaion.pptx
Christine's Supplier Sourcing Presentaion.pptx
christinelarrosa
 
Y-Combinator seed pitch deck template PP
Y-Combinator seed pitch deck template PPY-Combinator seed pitch deck template PP
Y-Combinator seed pitch deck template PP
c5vrf27qcz
 
AppSec PNW: Android and iOS Application Security with MobSF
AppSec PNW: Android and iOS Application Security with MobSFAppSec PNW: Android and iOS Application Security with MobSF
AppSec PNW: Android and iOS Application Security with MobSF
Ajin Abraham
 
5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides
DanBrown980551
 
Northern Engraving | Nameplate Manufacturing Process - 2024
Northern Engraving | Nameplate Manufacturing Process - 2024Northern Engraving | Nameplate Manufacturing Process - 2024
Northern Engraving | Nameplate Manufacturing Process - 2024
Northern Engraving
 
High performance Serverless Java on AWS- GoTo Amsterdam 2024
High performance Serverless Java on AWS- GoTo Amsterdam 2024High performance Serverless Java on AWS- GoTo Amsterdam 2024
High performance Serverless Java on AWS- GoTo Amsterdam 2024
Vadym Kazulkin
 
Essentials of Automations: Exploring Attributes & Automation Parameters
Essentials of Automations: Exploring Attributes & Automation ParametersEssentials of Automations: Exploring Attributes & Automation Parameters
Essentials of Automations: Exploring Attributes & Automation Parameters
Safe Software
 
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectors
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectorsConnector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectors
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectors
DianaGray10
 

Recently uploaded (20)

Demystifying Knowledge Management through Storytelling
Demystifying Knowledge Management through StorytellingDemystifying Knowledge Management through Storytelling
Demystifying Knowledge Management through Storytelling
 
inQuba Webinar Mastering Customer Journey Management with Dr Graham Hill
inQuba Webinar Mastering Customer Journey Management with Dr Graham HillinQuba Webinar Mastering Customer Journey Management with Dr Graham Hill
inQuba Webinar Mastering Customer Journey Management with Dr Graham Hill
 
"Choosing proper type of scaling", Olena Syrota
"Choosing proper type of scaling", Olena Syrota"Choosing proper type of scaling", Olena Syrota
"Choosing proper type of scaling", Olena Syrota
 
"Frontline Battles with DDoS: Best practices and Lessons Learned", Igor Ivaniuk
"Frontline Battles with DDoS: Best practices and Lessons Learned",  Igor Ivaniuk"Frontline Battles with DDoS: Best practices and Lessons Learned",  Igor Ivaniuk
"Frontline Battles with DDoS: Best practices and Lessons Learned", Igor Ivaniuk
 
9 CEO's who hit $100m ARR Share Their Top Growth Tactics Nathan Latka, Founde...
9 CEO's who hit $100m ARR Share Their Top Growth Tactics Nathan Latka, Founde...9 CEO's who hit $100m ARR Share Their Top Growth Tactics Nathan Latka, Founde...
9 CEO's who hit $100m ARR Share Their Top Growth Tactics Nathan Latka, Founde...
 
The Microsoft 365 Migration Tutorial For Beginner.pptx
The Microsoft 365 Migration Tutorial For Beginner.pptxThe Microsoft 365 Migration Tutorial For Beginner.pptx
The Microsoft 365 Migration Tutorial For Beginner.pptx
 
JavaLand 2024: Application Development Green Masterplan
JavaLand 2024: Application Development Green MasterplanJavaLand 2024: Application Development Green Masterplan
JavaLand 2024: Application Development Green Masterplan
 
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdfHow to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
 
GraphRAG for LifeSciences Hands-On with the Clinical Knowledge Graph
GraphRAG for LifeSciences Hands-On with the Clinical Knowledge GraphGraphRAG for LifeSciences Hands-On with the Clinical Knowledge Graph
GraphRAG for LifeSciences Hands-On with the Clinical Knowledge Graph
 
Skybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoptionSkybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoption
 
Fueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte WebinarFueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte Webinar
 
Nordic Marketo Engage User Group_June 13_ 2024.pptx
Nordic Marketo Engage User Group_June 13_ 2024.pptxNordic Marketo Engage User Group_June 13_ 2024.pptx
Nordic Marketo Engage User Group_June 13_ 2024.pptx
 
Christine's Supplier Sourcing Presentaion.pptx
Christine's Supplier Sourcing Presentaion.pptxChristine's Supplier Sourcing Presentaion.pptx
Christine's Supplier Sourcing Presentaion.pptx
 
Y-Combinator seed pitch deck template PP
Y-Combinator seed pitch deck template PPY-Combinator seed pitch deck template PP
Y-Combinator seed pitch deck template PP
 
AppSec PNW: Android and iOS Application Security with MobSF
AppSec PNW: Android and iOS Application Security with MobSFAppSec PNW: Android and iOS Application Security with MobSF
AppSec PNW: Android and iOS Application Security with MobSF
 
5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides
 
Northern Engraving | Nameplate Manufacturing Process - 2024
Northern Engraving | Nameplate Manufacturing Process - 2024Northern Engraving | Nameplate Manufacturing Process - 2024
Northern Engraving | Nameplate Manufacturing Process - 2024
 
High performance Serverless Java on AWS- GoTo Amsterdam 2024
High performance Serverless Java on AWS- GoTo Amsterdam 2024High performance Serverless Java on AWS- GoTo Amsterdam 2024
High performance Serverless Java on AWS- GoTo Amsterdam 2024
 
Essentials of Automations: Exploring Attributes & Automation Parameters
Essentials of Automations: Exploring Attributes & Automation ParametersEssentials of Automations: Exploring Attributes & Automation Parameters
Essentials of Automations: Exploring Attributes & Automation Parameters
 
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectors
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectorsConnector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectors
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectors
 

Exploring Change Block Tracking (CBT): A Game Changer for IT Professionals

  • 1. ChangeBlock Tracking(CBT) © 2023 StoneFly, Inc. | All rights reserved. A technical overview
  • 2. Absract Change Block Tracking or Change Tracking or CBT is making a record or journal of which blocks of a storage object were changed by I/O. A storage object is any logical- ly contiguous space used for storage of data. Now you need to keep in mind that CBT doesn’t keep track of what data was written, it only logs which areas of the object were written. Such track can be used for various applications, primarily for backup and restore. Usually such tracking is used to know what blocks have changed during a given time frame. 1 CBT : A Technical Review
  • 3. Backup uses snapshot technologies? So where does CBT come in all of this? Backup technologies rely on snapshot to make the backup consistent, however it’s very tedious to take backups of the entire object at every backup cycle. So what you do is either you use incremental or differential snapshots. Using incremental snapshots, one can know what has changed between two snap- shots. Backup applications use this information to know what blocks of the object to backup. Let’s look at the following example of backup using snapshots. 2 At the first backup cycle, we take a snapshot of the device and we take a full backup using the snapshot. At the next backup cycle we take an incremental snapshot of the device. This snapshot logic is already provided by the block title. Next we calculate what has changed between the two snapshots and take the backup of only those CBT : A Technical Review
  • 4. We can notice here that: 1) The snapshot has to exist not only for the period of backup, but for over two backup cycles. It needs to exist for more than two backup cycles. 2) Production I/O has always the need to go through this snapshot layer. Meaning that if you have the snapshot in the I/O path, then every I/O that you do may translate into more than one read/write based on the type of the snapshot. 3) These snapshots have to live for the longer time and the size of the snapshot will keep growing as much as you do I/O to it. When you want to delete the snapshot, it will be time consuming and tedious because these snapshots are so large that it takes time to manage all the data in the snapshot areas. The effect of point no. 2&3 is that they are multiplied when the backup interval is large. Imagine that your backup interval is read/write, now in case of redirect on write snapshots it would mean that you are merging the entire reads of data from the data area onto the base device. 3 CBT : A Technical Review Will all these points degrade the performance of the produc�on system? That’s true and it’s actually one of the problems that needs to be solved. Backup applications used to relay on snapshots to know what has changed but CBT provides them with information out of band. These backup applications don’t need to keep the snapshots alive after the backup is complete.
  • 5. To take a backup you need to know what has changed between two snapshots, otherwise you need to keep taking full backup every time, but for this to happen a new tracking instant has to be started atomically at the creation of the snapshot. However changing or integrating with the existing snapshot technology is difficult and is something that’s not necessary. This problem is easily solved by using two simultaneous tracking instances that over- lap across the snapshot creation operation. How Backup with CBT works 4 CBT : A Technical Review For Example this is the timeline that is given here as shown in the graph. Starting from left to right, you first start tracking the instance “T1-0” and you take a snapshot (S-0) of the device followed by a full backup. You always start with a full backup. As soon as your backup is done you delete the snapshot. This is because you already have a tracking out of band in place.
  • 6. In the next backup cycle, which is maybe a day later, a month, a week, or else, you start another tracking instance which is let’s say “TI-1” and then you follow it with another snapshot (S-1). Now after taking the snapshot you stop tracking instance “TI-0” which you have started a week before. Now the tracking instance TI-0 has all changes that has happened to that storage object in that particular week. You use that instance “TI-0” to take an incremental backup, so backup has to know which blocks have changed so it can just read that information and take the backup. Once your backup is complete, you do not need that particular snapshot anymore. You can see that the snapshot only exists till the time the backup needs it and it doesn’t need to live anymore. Essentially there are no incremental snapshots, there’s just one snapshot alive that you need for each backup. 5 CBT : A Technical Review Components that encompass the CBT There are two major components that are required for CBT: 1) The hook or the filter. What we mean by hook is something that allows you to take a peek at the I/O on the storage object. Whenever an application to the I/O to that particular storage object, you need to know which block of the storage object it’s touching. The most important requirement for such a hook is that it has to be fast, why? Because the problem that we are trying to solve by using CBT is to lessen the delay on the I/O in case of snapshots, and the same needs to hold to here. This is actually easily solved if you know you have an intermediate fast cache that’s available there for the hook to record all the tracking. This tracking Data can be asynchronously returned to Persistent Record later. Also the hook isn’t concerned with whether the I/O is successful or not.
  • 7. 6 CBT : A Technical Review 2) Persistent Record. It’s not necessary that you have this record on disk, it can be in memory record as well or it can be something like a map disk cover. The format of this persistent record should be in such a way that it’s easily consumable. For instance you have various formats, you have a lock structured format where the track- ing data is appended to the end of the record. However it may result in more burden. For example to know what has changed between a given time frame you need to go to the entire log to figure out the areas. VMware uses such a structure because it uses CTK file. Another format of Persistent Record is bitmap which images every bit it represents and logical extent of the storage object. Built bit is set if the logical extent is partially or fully return. If the logical extent is 256 kb even if you write 4 kb of that particular extent, the block is considered as return. This essentially avoids having large bitmap sizes. A multiple bitmap can represent multiple tracking instances, so it’s relatively easy to consume. Can opera�ons like merging of bitmaps be performed? Merging of bitmaps is another operation that can be performed. If you have one tracking instance represented by bitmap and another tracking instance represented by another bitmap, and you want to know what data has changed across both instances, you just need to merge the data and you get the needed data. Things to keep in mind when designing CBT One of the most important components of CBT is the hook or filter. And the problem that needs solving is performance degradation in production I/O. The hook has to be fast enough so as to not degrade the I/O performance. Most important than that it has to capture all the I/O paths. You can never miss tracking one I/O path to that particular block, or device or storage object because if you do the tracking data becomes inconsistent, and it results in a corrupted backup. Moreover, the corruption
  • 8. 7 CBT : A Technical Review message will appear during restore, which is much later in the time frame. You won’t know that during backup, it’s only during the restore and you don’t want that hap- pening. Scenarios that come into play with CBT Some key scenarios that come into mind is during identification of the storage object. Basically your backup application and your tracking filter or the tracking soft- ware, they have to be in consensus on how to identify storage object. It’s simple. For instance if you are tracking SAN (Storage Area Network) devices then SCSI (Small Computer System Interface) ID is one identifier. Another Scenario is reboot. Sometimes a device is accessible in an early stage of the boot. If you are tracking that device, and since one of our goals is not to miss any I/O, your tracking filter or hook needs to be in place before that. Also during shutdown no writes or I/O should be missed. If you are unable to capture or track all the I/O’s during shutdown and boot, you take a full backup and you start a new tracking instance. Another scenario is device being renamed. Of course if you’re using the unique iden- tifier you’re not in so much of trouble. Linux also allows for the storage object to be offline and come back online as a separate device. CBT needs to know that device it was tracking is now coming up as a separate name.
  • 9. www.stonefly.com 2865, 2869 and 2879 Grove Way, Castro Valley, CA 94546 USA. +1 (510) 265-1616