Welcome to Sign in | Help

Iar si iar despre baze de date de tip “snapshot”

  •  10-12-2006, 2:40 PM

    Iar si iar despre baze de date de tip “snapshot”

    Asa cum o si spune numele, o astfel de baza de date creeaza o imagine instantanee, statica  a unei baze de date utilizator (nu si de sistem). Astfel ca incarcarea adusa de interogari intensive poate fi echilibrata prin utilizarea acesteia.

    Tehnica pe care sistemul o foloseste la redarea datelor are numele “copy-on-write”. Iata cum merg lucrurile: initial sistemul construieste un schelet gol (un fisier “sparse”) care face trimitere la paginile de date originale; pe masura ce paginile bazei de date se modifica , ca urmare a unui update pe un tabel de exemplu , acestea se copiaza in fisierul sparse astfel ca la o interogare a bazei de date snapshot se pot folosi date de pe baza de date originala dar si din fisierul “sparse.”.

    Iata cum arata comanda de creare a unei astfel de baze de date :

     CREATE DATABASE a_Snapshot1248 ON

    ( NAME = N'a', FILENAME =N'D:\Microsoft Learning\2779\Teste\A_1248.ss')

    AS SNAPSHOT OF a

    unde “a ” este baza de date originala , “D:\” este o partitie neaparat NTFS lansata numai pe o editie “Enterprise” a SQL 2005.

    Mai departe se poate pune problema invers: pot reface baza de date a folosind un snapshot?

    Da, in comanda de restaurare se prevede si o astfel de optiune. Inainte de a va prezenta un astfel de exemplu mai fac un lucru, pentru a impusca 2 iepuri dintr-o data si anume adaug bazei de date inca un fisier de log .

    Comanda restore database a from database_snapshot='a_Snapshot1248'

    reface baza de date “a” exact ca in momentul crearii snapshot-ului, inlaturand si fisierul de log de adineaori.

     


    Gheorghe Ciubuc,SQL Server Influencer, MCP(SQL 2000), MCTS (SQL Server 2005) , OCA(Oracle 9i), Sybase(Brainbench)
View Complete Thread
Powered by Community Server (Commercial Edition), by Telligent Systems