BoulderRidge
Programmer
I’m trying to design an archive strategy for a large SQL Server 2008 application database (that I didn’t create).
The database has two types of tables: static and run-specific. Static tables don’t change frequently but run-specific tables are completely refreshed once per month. Data from previous months is preserved using a Run ID naming convention: MyTableA_Run001, MyTableA_Run002, MyTableA_Run003 represents 3 monthly refreshes of MyTableA.
[ul]
[li]There are about 35 different run-specific tables in the database (like MyTableA), each one replicated for the number of months available.[/li]
[li]The run-specific tables consume about 210 GB per month available.[/li]
[li]There are about 230 different static tables in the database.[/li]
[li]The static tables consume about 400 GB of space.[/li]
[li]I am required to retain a minimum of 13 months of runs in the live application database at all times.[/li]
[/ul]
I am considering a plan to size the database server to hold all the static tables plus at least 16 months of runs and each time it reaches 16 months to archive the oldest 3 months of run-specific tables, taking it back to 13 months of runs. This archive would only need to run quarterly.
My biggest question is: in what format can I archive these tables so that I can
[ol 1]
[li]Archive them in a compact format to store on a network share[/li]
[li]restore them into a copy of the full application database based on selected Run ID(s) when requested[/li]
[/ol]
Feedback and suggestions on an alternate plans are greatly appreciated.
FYI I am not a DBA but will be working with one to implement the solution. Options may be limited due to my environment.
-- BoulderRidge B-)
The database has two types of tables: static and run-specific. Static tables don’t change frequently but run-specific tables are completely refreshed once per month. Data from previous months is preserved using a Run ID naming convention: MyTableA_Run001, MyTableA_Run002, MyTableA_Run003 represents 3 monthly refreshes of MyTableA.
[ul]
[li]There are about 35 different run-specific tables in the database (like MyTableA), each one replicated for the number of months available.[/li]
[li]The run-specific tables consume about 210 GB per month available.[/li]
[li]There are about 230 different static tables in the database.[/li]
[li]The static tables consume about 400 GB of space.[/li]
[li]I am required to retain a minimum of 13 months of runs in the live application database at all times.[/li]
[/ul]
I am considering a plan to size the database server to hold all the static tables plus at least 16 months of runs and each time it reaches 16 months to archive the oldest 3 months of run-specific tables, taking it back to 13 months of runs. This archive would only need to run quarterly.
My biggest question is: in what format can I archive these tables so that I can
[ol 1]
[li]Archive them in a compact format to store on a network share[/li]
[li]restore them into a copy of the full application database based on selected Run ID(s) when requested[/li]
[/ol]
Feedback and suggestions on an alternate plans are greatly appreciated.
FYI I am not a DBA but will be working with one to implement the solution. Options may be limited due to my environment.
-- BoulderRidge B-)