NB: Ik ben op geen enkele manier commercieel met Idera verbonden en schrijf deze artikelen vanuit mijn ervaringen met deze produkten. Commentaar zal ik dus ook hebben. Ik weet dat er meerdere software leveranciers zijn die soortgelijke produkten levert, maar daar heb ik geen ervaring mee.
Het probleem
Bij mijn werkgever moeten er voor analyse doeleinden dagelijks een aantal databases ververst worden. De bron van deze database is een Axapta database, zo'n 600GB groot. Backuppen met SQL is geen optie want dit duurt te lang(we gebruiken nog SQL 2005, dus de nieuwe ingebouwde compressie kunnen we nog niet gebruiken), het geeft een te groot bestand (wat ook nog over het netwerk moet) en moet vervolgens weer ge-restored worden.Ik heb een tijd met BCP de tabellen ververst, maar ook dit is omslachtig en kost veel tijd. Wanneer we een nieuwe release van onze applicatielaag aanbrengen in Axapta, zijn er ook vaak tabellen aangepast, waardoor het BCP verhaal ook weer wat extra aandacht krijgt.
Wat zocht ik?
Ik zocht dus een backuptool die een gecomprimeerde backup maakt. Tevens moest er een methode zijn die deze gecomprimeerde backup snel beschikbaar stelt aan eindgebruikers. Deze handelingen moesten eenvoudig en geautomatiseerd uitgevoerd kunnen worden.Wat vond ik (in eerste instantie)
Op internet vond ik in eerste instantie een legale, gratis versie van SQLSafe. Dit was SQLSAfe v4.xDeze versie werkte goed voor het probleem van een snelle, compacte backup en loste de probleemstelling gedeltelijk op. Helaas was deze gratis versie bij de volgende release van SQLSafe verdwenen; vermoedelijk was deze te populair! Maar omdat ik nog geen oplossing had voor het snel kunnen restoren probleem, heb ik nog een tijdje met deze versie gewerkt.
Wat uiteindelijk werd gebruikt
Totdat er een nieuw stukje software door Idera gelanceerd werd: SQL Virtual DB. Hiermee kun je door SQLSafe gemaakte backups direct attachen aan SQL Server. SQL Server ziet deze ge-attachte database als een echte database die je kunt lezen en bewerken. Het principe is een beetje als een snapshot database: ieder blok dat je wijzigt in de ge-attachte database wordt in sparse files bijgehouden. Dit betekent dat de originele backup dus niet wordt gewijzigd. Als je dus de backup detached en daarna weer attached heb je de originele database weer terug.Enkele mogelijkheden van SQL VirtualDb:
- Dagelijks te verversen adhoc omgevingen zijn een ideale kandidaat voor dit stuk software
- Versies van oude databases die wel beschikbaar moeten zijn, maar niet bewerkt mogen worden zijn ook een ideale kandidaat
- Het vergelijken van databases kan met deze software ook een stuk sneller: de kopie database kan snel gekoppeld worden voor vergelijkingen. Omdat de backup ook nog gecomprimeerd is, is het probleem van te weinig schijfruimte ook niet aan de orde