Basic mssql flow

  • 0
  • 1
  • Question
  • Updated 4 years ago
  • Answered

I have been reading a lot of the documentation, but need to know if I understand it right :)

The mssql staging database instance is picking up transactions backups and applying them to the staging database and then makes a Delphix file system consistent snapshot.

So when I provision the vdb/snapshot to a target machine it will mount that snapshot and start the mssql.

But how does it work provisioning vdbs in specific minutes or even seconds? - is it done when provisioning by applying additional transactions after the "nearest" file system snapshot?

Also when provisioning, there has to be a running target for each vdb? Or can one "target" host multiple mssql instances?

Photo of Felix Nielsen

Felix Nielsen

  • 100 Points 100 badge 2x thumb

Posted 4 years ago

  • 0
  • 1
Photo of David Gillespie

David Gillespie, Employee

  • 1,010 Points 1k badge 2x thumb
Official Response
Hi Felix,
When a VDB is created from a snapshot a separate files system is created specifically for that VDB and that is mounted on the target server. We then create the specified database in the SQL Server instance, which has to be started and accessible to us and is specified during provisioning.

You can specify a point in time when provisioning a VDB only if you have enabled logsync on the dsource first.

A target or source server can have many SQL Server instance on it. We ask that the customer manage the memory such that it is not over allocated between the SQL Server instances and other process running on that host.
A target server can also have many VDBs provisioned to it's one or many SQL Server instances.

I hope this helps.
Dave G.
Photo of Ankur Sarin

Ankur Sarin, Employee

  • 460 Points 250 badge 2x thumb
Official Response
Hi Felix,

Yes, if multiple VDBs are assigned to the same SQL Server instance on a target, they would have to be named uniquely.

LogSync works exactly as you suggest.
Delphix keeps track of the transaction log backups as they happen on the production source and takes a snapshot after restoring each one on the staging server. If LogSync is enabled, the transaction logs are preserved. When provisioning, we pick the closest snapshot to the point in time that you pick, and then apply the transaction log (using the "stop at" clause).

Hope this answers your questions.