Introdução ao SQL Server Database Snapshot
Veja nesse artigo o conceito de database snapshot, ou foto (cópia) da base de dados, mostrando as diversas utilidades desta funcionalidade no SQL Server.
Para isso, serão
abordadas as diversas utilidades desta funcionalidade, além de demonstrar
exemplos práticos de sua utilização. A criação de database snapshot é útil
quando existe a necessidade de “congelar” um momento de uma base de dados. Esta
foto da base de dados poderá ser acessada somente para leitura dos dados, o que
significa que é possível comparar os dados antigos com os dados do momento
atual ou mesmo com outro momento qualquer em que se tenha gerado outra database
snapshot. Além disso, uma database snapshot pode ser usada para reverter uma
alteração em uma base de dados. Esta reversão pode ser feita tanto através de
consultas na database snapshot que recuperem os dados necessários para corrigir
a base de dados afetada, como também através do restore de toda a base de
dados.
No dia a dia de grandes corporações, ou até mesmo de empresas de pequeno e médio porte, é comum a necessidade de elaborarmos relatórios baseados nos dados gerados pelos sistemas transacionais da empresa, como um sistema de faturamento, um sistema de vendas ou um CRM.
Normalmente, cada um desses sistemas transacionais possui um servidor de banco de dados próprio para os dados utilizados pelas aplicações e estes dados são copiados para um ambiente único e apartado na empresa, chamado de “Data Warehouse” (armazém de dados).
Neste outro ambiente, os dados sofrem algumas transformações para que possam ser usados em relatórios e são armazenados em uma base de dados que é acessada por esses relatórios.
Tais relatórios, principalmente para os grandes cargos da empresa (gerência, diretoria, vice-presidência, presidência), podem ter necessidades e intenções diversas, inclusive a de comparar o último trimestre fiscal da empresa com o atual.
Através dos relatórios, a empresa pode, por exemplo, estabelecer uma meta de crescimento de vendas 10% acima do que vendeu no trimestre anterior. Na Figura 1 temos um exemplo simples de relatório que compara o faturamento do trimestre passado com o atual, além de representar a meta que deve ser alcançada no trimestre atual.
Figura 1. Exemplo de gráfico de relatório comparando dois momentos.
Outro uso comum da database snapshot é quando precisamos nos preparar para o rollback de uma implantação complexa na base de dados. Nestes casos, você pode “congelar” uma cópia da base de dados e realizar a implantação sem se preocupar com um plano de rollback muito complexo. Com a possibilidade de restaurar uma database snapshot sobre a base de dados que lhe deu origem, isso fica muito mais simples.
Para demonstrar este recurso na prática, abordaremos dois casos de uso de database snapshot neste artigo. Um para comparação de dados e outro para recuperação de objetos da base de dados de origem. Antes disso, no entanto, veremos como funciona este interessante recurso que já existe desde o SQL Server 2005 Enterprise e ajuda muito no dia a dia do DBA.
" [...] continue lendo...
Artigos relacionados
-
Artigo
-
Artigo
-
Artigo
-
Artigo
-
Artigo