none
DPM 2010, co-located SQL databases, and protection group breakout

    Вопрос

  • Before I pose my question, let me provide you with some background about my DPM environment as it appliest to this topic:

    1 DPM server
    - short-term disk protection only; max 7 days for recovery points
    - 4 protection groups
    - Using co-location in all groups

    1 SQL server
    - 5 Instances (3 - SQL 2008 R2; 2 - SQL 2005)

    I inherited administration of my organization's DPM environment and have been doing everything within my power to keep backups running consistently. My DPM server is now out of space (I'm in the process of acquiring a new DPM server with short-term and long-term storage).

    Problem:

    I discovered that parallel DB backups do not take place when SQL 2005 and SQL 2008 DBs reside in the same protection group. This results in mind-numbingly long backup jobs. Prior to assuming the DPM admin role, all of my organization's SQL databases were being stored within the same protection group. Accordingly, I created new protection groups based on my SQL server's instances and started moving the SQL DBs into those respective groups. Parallel backup jobs are now working correctly (yay!).

    However, I discovered that with all this shuffling, I have not been able to free up disk space. This is because of SQL co-location. Since the original SQL protection group still exists, the replica volumes that my (now moved) data sources used to be in still exist (there are still data sources within these volumes). So now I have huge replica volumes with but with "not-so-huge" databases within them (boo!).

    For this protection group, I have 2.81 TB allocated. My data sources are using 1.8 TB. So I have almost a full TB of space not being utilized because of now-improperly-sized replica volumes. I have just under 265 GB of free space available in my storage pool.

    So, after all that, here's the question:

    If I stop protection of this group, choosing the "retain protected data" option, will that remove the old replica volumes, but retain the recovery points? The notes for the option state that the replica along with the recovery points are retained.

    If I choose the "delete protected data" option, will I lose the recovery points along with the replica? The notes say that this option deletes the replica, but does not mention anything about the recovery points. Certainly, I want to retain the recovery points, but ditch the old replica volumes.

    Sorry for the novel of a post :)

    8 марта 2012 г. 18:37

Ответы

  • Hi,

    First, review this blog, it will describe in detail the caveats of co-location and stopping, re-protecting co-located data sources.

    http://blogs.technet.com/b/dpm/archive/2010/11/03/protect-unprotect-protect-unprotect-understanding-how-dpm-2010-retention-works.aspx?CommentPosted=true#commentmessage

    There is a script you can run to remove the old replica and recovery point data after you re-protect it and let it make new recovery points for a few days, or you can just reduce the retention period and let DPM delete the old volumes once all the RP's expire that are on the old volumes.

    To answer your questions directly, both replica and recovery point volumes get deleted if you choose the "delete protected data" - recovery point volumes are of no use if the replica volume is gone.  likewise choosing to retain data option maintains both volumes.


    Please remember to click “Mark as Answer” on the post that helps you, and to click “Unmark as Answer” if a marked post does not actually answer your question. This can be beneficial to other community members reading the thread. Regards, Mike J. [MSFT] This posting is provided "AS IS" with no warranties, and confers no rights.

    9 марта 2012 г. 1:33
  • Hi,

    I think you are asking if you remove some SQL databases from protection that are co-located and delete the replica, will DPM add newly protected SQL databases to the exisiting replica that now has more free space.  I believe the answer is no, but I have never tried that.  You can use this DPM Powershell script to see what datasources are on what replica path (volume GUID) and see if an existing replica ever gets re-used again as you add new datasources.  I believe any new SQL data sources added will always get new replica.

    # Get datasource path for co-located data sources
    # Where protectiongroupname = the protection group you want to get information for. 
    # Look for datasources that share the same replicapath
    $pg = get-protectiongroup (&hostname) | ? { $_.friendlyname -eq 'protectiongroup_name'} 
    get-datasource $pg  | sort-object -property replicapath | ft replicapath, name, diskallocation -AutoSize

     


    Please remember to click “Mark as Answer” on the post that helps you, and to click “Unmark as Answer” if a marked post does not actually answer your question. This can be beneficial to other community members reading the thread. Regards, Mike J. [MSFT] This posting is provided "AS IS" with no warranties, and confers no rights.

    • Помечено в качестве ответа MSS_AxiomEPM 14 марта 2012 г. 23:23
    10 марта 2012 г. 0:55
  • Hi,

    I actually stumbled upon this useful technet article, and it may provide better insight.

    Moving Between Co-Located and Non-Co-Located Protection Groups
    http://technet.microsoft.com/en-us/library/ff399045.aspx


    Please remember to click “Mark as Answer” on the post that helps you, and to click “Unmark as Answer” if a marked post does not actually answer your question. This can be beneficial to other community members reading the thread. Regards, Mike J. [MSFT] This posting is provided "AS IS" with no warranties, and confers no rights.

    • Помечено в качестве ответа MSS_AxiomEPM 16 марта 2012 г. 15:11
    14 марта 2012 г. 23:38

Все ответы

  • Hi,

    First, review this blog, it will describe in detail the caveats of co-location and stopping, re-protecting co-located data sources.

    http://blogs.technet.com/b/dpm/archive/2010/11/03/protect-unprotect-protect-unprotect-understanding-how-dpm-2010-retention-works.aspx?CommentPosted=true#commentmessage

    There is a script you can run to remove the old replica and recovery point data after you re-protect it and let it make new recovery points for a few days, or you can just reduce the retention period and let DPM delete the old volumes once all the RP's expire that are on the old volumes.

    To answer your questions directly, both replica and recovery point volumes get deleted if you choose the "delete protected data" - recovery point volumes are of no use if the replica volume is gone.  likewise choosing to retain data option maintains both volumes.


    Please remember to click “Mark as Answer” on the post that helps you, and to click “Unmark as Answer” if a marked post does not actually answer your question. This can be beneficial to other community members reading the thread. Regards, Mike J. [MSFT] This posting is provided "AS IS" with no warranties, and confers no rights.

    9 марта 2012 г. 1:33
  • Ok. I kinda figured that might be the case, but I wanted to be sure. I know I'll certainly be taking all of this information to the bank when I implement the new DPM.

    Does DPM intelligently adjust/"load-balance" replica volumes as data sources are deleted?

    9 марта 2012 г. 22:57
  • Hi,

    I think you are asking if you remove some SQL databases from protection that are co-located and delete the replica, will DPM add newly protected SQL databases to the exisiting replica that now has more free space.  I believe the answer is no, but I have never tried that.  You can use this DPM Powershell script to see what datasources are on what replica path (volume GUID) and see if an existing replica ever gets re-used again as you add new datasources.  I believe any new SQL data sources added will always get new replica.

    # Get datasource path for co-located data sources
    # Where protectiongroupname = the protection group you want to get information for. 
    # Look for datasources that share the same replicapath
    $pg = get-protectiongroup (&hostname) | ? { $_.friendlyname -eq 'protectiongroup_name'} 
    get-datasource $pg  | sort-object -property replicapath | ft replicapath, name, diskallocation -AutoSize

     


    Please remember to click “Mark as Answer” on the post that helps you, and to click “Unmark as Answer” if a marked post does not actually answer your question. This can be beneficial to other community members reading the thread. Regards, Mike J. [MSFT] This posting is provided "AS IS" with no warranties, and confers no rights.

    • Помечено в качестве ответа MSS_AxiomEPM 14 марта 2012 г. 23:23
    10 марта 2012 г. 0:55
  • That's a bummer. But I'll definitely take a look at this script. I would love to see an enhancement to the way DPM handles co-located SQL databases so that it intelligently moves datasources around according to the size of the datasource and existing replica volumes

    14 марта 2012 г. 23:23
  • Hi,

    I actually stumbled upon this useful technet article, and it may provide better insight.

    Moving Between Co-Located and Non-Co-Located Protection Groups
    http://technet.microsoft.com/en-us/library/ff399045.aspx


    Please remember to click “Mark as Answer” on the post that helps you, and to click “Unmark as Answer” if a marked post does not actually answer your question. This can be beneficial to other community members reading the thread. Regards, Mike J. [MSFT] This posting is provided "AS IS" with no warranties, and confers no rights.

    • Помечено в качестве ответа MSS_AxiomEPM 16 марта 2012 г. 15:11
    14 марта 2012 г. 23:38
  • I really liked that article, as well as the other articles that were included in that section.

    But as you might expect, I have another question...

    I'm beginning to understand how co-location, especially for SQL databases, works. It stinks that the allocated replica space in PG1, with co-location, remains when a datasource is moved to a new protection group (PG2), which also has co-location. It would be nice if DPM intelligently recognized this and effectively said "ok, you're protected in your new home. I can now reclaim the replica space that you no longer occupy." But that's wishful thinking.

    So that being the case, what would be the impact if I stopped protection of datasources based on replica volumes? For instance, I have several replica volumes that are outrageously big, but the databases now occupied by them are very small. Let's say one such replica volume has 5 databases and I stop protection on them, choosing to retain the data. I think I'm gonna answer my own question, but just humor me here. :) What would happen if...

    • I re-protect those data sources within the same PG?
    • I create an entirely new PG (with co-location) and add those datasources to that new PG?

    For the first question, I think the answer would be "the data sources would be returned to the replica volume they previously occupied". If so, would that give me an opportunity to adjust the size of the replica volume?

    For the second question, I know they would get a new replica volume. After the recovery points expire, will the old replica volume, as long as there are no other active datasources using it, be returned to unallocated space? If so, this might be my solution. Here's what I could do (let me know if this is logical or not)....

    1. I find a volume that meets my requirements and unprotect, but retain, the datasources contained therein
    2. I create two new PGs (I'm creating protection groups based on SQL instances) with the same retention settings as my original PG
    3. I then re-protect those data sources into their respective SQL Instance-based PG.

    This, I would expect, will, eventually, eliminate the old replica volume in the old protection group, thus increasing my unallocaated space. Am I on the right track with this?

    16 марта 2012 г. 15:11
  • Hi,

    Nothing prevents you from shrinking the replica volume outside of DPM if you have one that is bloated due to removed databases from protection.  The reason DPM does not offer that option for replica volume is it could lead to recovery point volume bloat, and even possible recovery points being lost. So if you want to gamble you can do it by using diskpart.exe or adding a drive letter to the replica volume and do it via the disk management gui.


    Please remember to click “Mark as Answer” on the post that helps you, and to click “Unmark as Answer” if a marked post does not actually answer your question. This can be beneficial to other community members reading the thread. Regards, Mike J. [MSFT] This posting is provided "AS IS" with no warranties, and confers no rights.

    16 марта 2012 г. 15:53