Skip to main content
Question

MS SQL Instant Clone / Recovery Points - how it works

  • August 4, 2026
  • 1 reply
  • 8 views

mateusznitka
Apprentice
Forum|alt.badge.img+7

Hi,

Can someone clarify the Instant Clone or “Optimize for table level restore” features?

I have multiple SQL Servers. DB admins ask me about possibility to restore single tables instead of whole databases (some of them are huge like 10+ TB).

So now I’m testing this on my playground but I’m not sure I get how it works.

Creating recovery point / instant clone attach new database to selected instance and on low-level this is VSS snapshot mounted directly from my Commvault disk library to the proxy server. So there is no real data on server - it’s just on my commvault library. Is that correct?

Proxy server have to be the server when I have target instance.

I can’t restore tables directly to the source database. I can only restore tables to some another databases. So what is the point of this feature?

I saw that enabling this cause backup by only 1 stream. Is that true?

1 reply

Forum|alt.badge.img+4
  • Vaulter
  • August 5, 2026

Hi Mateusznitka,

 

Thanks for your questions. 

 

When you enable “Optimize for table level recovery” you are telling Commvault to take a block-level backup of the SQL Server database.

This will enable VSS backup and indexing, which helps to chunk the data into extents. The VSS backup is, in most cases, single streamed. This is just the nature of VSS backup for SQL Server.

Creating extents of the data files enables granular restore of SQL database data without requiring the entire database to be restored, as well as the ability to create database clones for temporary usage.

Creating a recovery point will use backup data to create a new database in the proxy instance, there will be a little disk space used to cache files locally on the access node, which helps greatly with I/O performance. The bulk of the data will stay on backup storage and only the required extents will be written as they are requested by the database engine. The local cache is cleaned up by Commvault as it goes so it should never grow too large. 


The main use case for clones are for things like dev or reporting where an entire database can be cloned for a short time to allow data to be queried for reporting or modified for testing purposes, taking the reporting load off production and allowing a test to be performed without restoring the entire DB.

The main use case for table level restore is to pull out an entire table or set of tables for querying or for import.

Commvault does not support restoring the table level data back to the original source database.

I hope this answered some things for you.

Regards,

David