När du säger arkiv, innebär detta "behov av att behålla data för senare användning".
Bland annat, om data inte lämnas tillgänglig nu, riskerar du att förlora den om du förlitar dig på bandbackuper. Du måste också ha diskutrymme för att återställa det i framtiden.
Dessa är naturligtvis inte oöverstigliga problem, men om inte saker och ting är kritiska, skulle jag hålla data online tills motsatsen bevisats. Min erfarenhet visar att folk vill ha arkiverad data när man minst anar...
Ett alternativ (frågan är taggad SQL Server 2008) är komprimering av data . Du kan till exempel komprimera arkivtabeller som finns online.
För att skapa en arkivtabell.
SELECT * INTO ANewArchiveTable
FROM CurrentTable
WHERE SomeDateColumn <= DATEADD(year, -2, GETDATE())
Eller använd partitionering för att uppnå samma
Om data är online kan du reducera den "aktuella" tabellen ytterligare och ha data äldre än t.ex. 3 månader i en komprimerad arkivtabell/partition också