Tempo restante para finalizar execução do Backup no Microsoft SQL Server 2008 e R2.

Pessoal, bom dia.

Quais as novidades?

Estou de volta com mais uma dica para vocês. Hoje vou falar um pouco sobre o tempo de execução de um processo de Backup.

Introdução

Uma das principais atividades de qualquer profissional da área de TI é manter seu ambiente em funcionamento, pois bem, para que isso possa acontecer nada como realizar o bom e velho processo de backup.

Acredito que você leitor já deve ter passado pela necessidade de realizar um backup de seu ambiente, máquina, banco de dados, arquivos, etc.

Existem diversos mitos sobre as técnicas de backup, mas na verdade o problema normalmente não esta relacionado ao processo de backup, muito pelo contrário, o problema na verdade é o processo de Restore(Restauração ou Recuperação dos Dados). Sendo o processo de restauração, atividade crucial para funcionamento e disponibilidade de todo e qualquer tipo de ambiente.

Para Microsoft esta preocupação é a mesma de todos, manter sempre o ambiente seguro, o administrador tranqüilo e o usuário feliz. Pensando nisso, a Microsoft introduziu a partir do SQL Server 2008 alguns atributos que possibilitam consultar e obter informações sobre o tempo de execução de um backup, como também, seu indicador de execução e até mesmo o tempo restante para sua conclusão.

Como obter informações sobre o Backup

O processo de backup normalmente apresenta um conjunto específico de informações que nos ajudam a identificar o quanto esta atividade demanda de processamento de hardware, como também, a sua importância.

Para que possamos obter estas informações durante o seu tempo de execução, foi introduzido a partir do Microsoft SQL Server 2008, a DMV(Dynamic Management View / Visão de Gerenciamento Dinâmico) chamada: sys.dm_exec_requests.

É com base nesta nova DMV, que temos a possibilidade de encontrar as informações todas as transações em execução em nosso Servidor ou Instância SQL Server. Esta DMV possui um conjunto específico de dados utilizados em tempo real e de forma dinâmica, o que possibilitam a sua obtenção de informação no tempo de execução da transação.

A seguir apresento algumas das colunas existentes na sys.dm_exec_requests, utilizadas para retorno de dados sobre o Backup:

  • Command: Apresenta o time do comando transacional em execução;
  • Estimated_Completion_Time: Apresenta uma estimativa de tempo para conclusão da transação;
  • Start_Time: Apresenta a data e hora de inicialização da transação; e
  • Percent_Complete: Apresenta a porcentagem de execução concluída para esta transação.

Através da combinação de uso destas quatro colunas, foi possível desenvolver o código de permite identificar e apresentar as informações sobre o tempo de execução e conclusão do Backup.

A seguir apresento o Código 1, utilizado como método de transação para obtenção de dados sobre a execução de um backup:

— Exemplo: Código 1 – Obtendo informações sobre o Backup —

SELECT command,

               ‘EstimatedEndTime’ = Dateadd(ms,estimated_completion_time,Getdate()),

               ‘EstimatedSecondsToEnd’ = estimated_completion_time / 1000,

               ‘EstimatedMinutesToEnd’ = estimated_completion_time / 1000 / 60,

               ‘BackupStartTime’ = start_time,

               ‘TimeExecution’=  DateDiff(minute,Getdate(),Start_time),

               ‘PercentComplete’ = percent_complete

FROM sys.dm_exec_requests

 WHERE session_id = @@SPID

De posse deste código, agora fica mais fácil conseguir encontrar as informações sobre o tempo de execução, estimativas de encerramento e porcentagem já concluída do nosso backup.

 Espero que todos tenham gostado nos encontramos em breve.

 Até mais.

Este post foi publicado em Dicas, Mundo SQL Server, Scripts, SQL Server, VIRTUAL PASS BR, Windows e marcado com a tag , , , , em por .

Sobre Junior Galvão - MVP

Profissional com vasta experiência na área de Tecnologia da Informação e soluções Microsoft. Mestre em Ciências Ambientes na linha de pesquisa em Geoprocessamento e Modelagem Matemática pela Universidade Estadual Paulista "Júlio de Mesquita Filho". Pós-Graduado no Curso de Gestão e Engenharia de Processos para Desenvolvimento de Software com RUP na Faculdade FIAP – Faculdade de Informática e Administração Paulista de São Paulo. Graduado no Curso Superior em Gestão da Tecnologia de Sistemas de Informação pela Uninove – Campus São Roque. Formação MCDBA Microsoft, autor de artigos acadêmicos e profissionais postados em Revistas, Instituições de Ensino e WebSistes. Meu primeiro contato com tecnologia ocorreu em 1994 após meus pais comprarem nosso primeiro computador, ano em que as portas para este fantástico mundo se abriram. Neste mesmo ano, comecei o de Processamento de Dados, naquele momento a palavra TI não existia, na verdade a Tecnologia da Informação era conhecida como Computação ou Informática, foi assim que tudo começou e desde então não parei mais, continuando nesta longa estrada até hoje. Desde 2001 tenho atuado como Database Administrator – Administrador de Banco de Dados – SQL Server em tarefas de Administração, Gerenciamento, Migração de Servidores e Bancos de Dados, Estratégias de Backup/Restauração, Replicação, LogShipping, Implantação de ERPs que utilizam bancos SQL Server, Desenvolvimento de Funções, Stored Procedure, entre outros recursos. Desde 2008 exerço a função de Professor Universitário, para as disciplinas de Banco de Dados, Administração, Modelagem de Banco de Dados, Programação em Banco de Dados, Sistemas Operacionais, Análise e Projetos de Sistemas, entre outras. Experiência na Coordenação de Projetos de Alta Disponibilidade de Dados, utilizando Database Mirroring, Replicação Transacional e Merge, Log Shipping, etc. Trabalhei entre 2011 e 2017 como Administrador de Banco de Dados e Coordenador de TI no FIT – Instituto de Tecnologia da Flextronics, atualmente exerço a função de Professor Universitário na FATEC São Roque. CTO da Galvão Tecnologia, consultoria especializada em Gestão de TI, Administração de Servidores Windows Server, Bancos de Dados Microsoft SQL Server e Virtualização. Possuo titulação Oficial Microsoft MVP e reconhecimentos: MCC, MSTC, MIE e MTAC.

Uma ideia sobre “Tempo restante para finalizar execução do Backup no Microsoft SQL Server 2008 e R2.

  1. Pingback: Entendendo e Melhorando a performance de seus backups (SQL Server) « Alex Souza

Os comentários estão desativados.