Introdução ao Data Collection no Microsoft SQL Server 2008 – Final.

Olá pessoal, bom dia.

Conforme o prometido, estou de volta para finalizar a série de artigos sobre o Data Collection, nesta última parte, vou destacar os recursos do CONJUNTO DE COLETA DE ESTATÍSTICAS DE CONSULTA.

Desejo uma boa leitura.

——————————————————————————————————————————————————–

CONJUNTO DE COLETA DE ESTATÍSTICAS DE CONSULTA.

Reúne dados sobre estatísticas de consulta e texto de consulta individual, planos de consulta e consultas específicas. Esses dados, quando vinculados com as estatísticas e atividades no nível do sistema, permitem que os usuários façam busca detalhada
abaixo do nível de sessão para uma consulta individual. Esse conjunto de coleta reúne dados das fontes a seguir:

  • sys.dm_exec_requests – Retorna informações sobre cada solicitação que está em execução no SQL Server;
  • sys.dm_exec_sessions – Retorna uma linha por sessão autenticada no SQL Server. sys.dm_exec_sessions é um modo de exibição de escopo de servidor que mostra informações sobre todas as tarefas internas e conexões de usuário ativo. Esta informação inclui a versão do cliente, nome do programa cliente, tempo de logon do cliente, usuário de login, configuração de sessão atual e mais. Use sys.dm_exec_sessions para exibir pela primeira vez a carga do sistema atual e para identificar uma sessão de interesse e, em seguida, saiba mais informações sobre a sessão usando outras exibições de gerenciamento
    dinâmico ou funções de gerenciamento dinâmico; 
  • sys.dm_exec_query_stats – Retorna as estatísticas de desempenho agregadas para os planos de consulta em cache. O
    modo de exibição contém uma linha por instrução de consulta no âmbito do plano em cache e a vida útil das linhas estão ligados ao próprio plano. Quando um plano é removido do cache, as linhas correspondentes são eliminadas deste modo
    de exibição.

O conjunto de coleta de Estatísticas de Consultas usa o tipo de coletor de Atividade de Consulta. Este, por sua vez, coleta dados usando o pacote SSIS de QueryActivityCollect.dtsx e carrega dados usando o pacote SSIS de QueryActivityUpload.dtsx.

A tabela 3 a seguir fornecem informações sobre o conjunto de coleta de Estatísticas de Consulta e seu item de coleta.

Nome do conjunto de coleta

Estatísticas de consulta

Modo de coleta Em cache
Freqüência da agenda de carregamento A cada 15 minutos
Retenção de dados 14 dias
Item de coleta Estatísticas de Consulta – Atividade de Consulta

Tabela 3. Informações sobre o conjunto de dados coletados através das Estatísticas de consulta.

SEGURANÇA DO COLETOR DE DADOS

O coletor de dados usa o modelo de segurança baseado em função implementado pelo SQL Server Agent. Esse modelo permite que o administrador do banco de dados execute várias tarefas do data collector em um contexto de segurança que tem apenas as
permissões exigidas para executar a tarefa.

Essa abordagem também é usada para operações que envolvem tabelas internas que só podem ser acessadas usando views ou stored procedures. Nenhuma permissão é concedida a tabelas internas. Em vez disso, as permissões são verificadas no usuário da view ou da stored procedure usada para acessar a tabela.

Outro aspecto fundamental desse modelo de segurança são as permissões concêntricas. Nas permissões concêntricas, funções mais privilegiadas herdam as permissões de funções menos privilegiadas nos objetos (incluindo alertas, operadores, tarefas, agendas e proxy).

Segurança de rede

Informações confidenciais podem ser passadas entre instâncias de destino, a instância relacional associada ao servidor de configuração, os conjuntos de coleta em execução e o servidor que hospeda o data warehouse de gerenciamento.

Para proteger qualquer dado transferido em uma rede, são implementados mecanismos de segurança padrão, como criptografia de protocolo para Transact-SQL.  

Permissões para configurar e usar o coletor de dados

Dependendo da tarefa, os usuários devem ser membros de uma ou mais das funções de banco de dados fixas fornecidas para o coletor de dados. Em ordem de acesso mais privilegiado para acesso menos privilegiado, as funções são as seguintes:

  • dc_admin – Data Collection Administrator;
  • dc_operator – Data Collection Operator; e
  • dc_proxy – Data Collection Proxy.

Essas funções são armazenadas no banco de dados MSDB. Por padrão, nenhum usuário é membro dessas funções de banco de dados. A associação do usuário a elas deve ser explicitamente concedida.

O usuários que são membros da função de servidor fixa sysadmin têm acesso total às views do coletor de dados e aos objetos do SQL Server Agent. Porém, eles precisam ser adicionados explicitamente à funções de coletor de dados.

Os membros das funções db_ssisadmin e dc_admin podem elevar seus privilégios para sysadmin. Essa elevação de privilégios pode ocorrer porque essas funções podem modificar os pacotes do Integration Services e os pacotes do Integration Services podem
ser executados pelo SQL Server usando o contexto de segurança sysadmin do SQL Server Agent. Para se proteger contra essa elevação de privilégios ao executar planos de manutenção, conjuntos de coletas de dados e outros pacotes do Integration Services, é recomendado configurar os trabalhos do SQL Server Agent que executam pacotes para usar uma conta proxy com privilégios limitados ou adicionar apenas membros sysadmin às funções db_ssisadmin e dc_admin.

Função dc_admin

Usuários atribuídos à função dc_admin têm acesso total de administrador (Criação, Leitura, Atualização e Exclusão) à configuração do coletor de dados em uma instância de servidor. Membros dessa função podem executar as seguintes operações:

  • Definir propriedades de nível de coletor;
  • Adicionar novos conjuntos de coleta;
  • Instalar novos tipos de coleta; e
  • Executar todas as operações permitidas à função dc_operator.

A função dc_admin é membro da role SQLAgentUserRole, essa função é necessária para criar agendas e executar tarefas. Importante destacar que, proxies criados para o coletor de dados devem conceder acesso à dc_admin para criá-los e utilizá-los em qualquer etapa da tarefa que exija um proxy.

Função dc_operator

Membros da função dc_operator têm acesso de Leitura e Atualização. Essa função suporta tarefas de operações relacionadas com a execução e configuração de conjuntos de coleta. Membros dessa função podem executar as seguintes operações:

  • Iniciar ou parar um conjunto de coleta;
  • Enumerar conjuntos de coleta existentes;
  • Exibir informações detalhadas (por exemplo, itens e freqüência de coleta) associadas a um conjunto de coleta;
  • Alterar a freqüência de carregamento de conjuntos de coleta existentes;
  • Alterar a freqüência de coleta de itens de coleta que fazem parte de um conjunto de coleta existente.

A função dc_operator é membro da função db_ssisltduser. A associação a essa função é necessária para que os membros possam enumerar e exibir pacotes do coletor de dados.

Função dc_proxy

Membros da função dc_proxy têm acesso de Leitura aos conjuntos de coleta do coletor de dados e às propriedades de nível de coletor. A função dc_proxy é membro da função db_ssisltduser. A associação a essa função é necessária para que os membros possam enumerar e exibir pacotes do coletor de dados.

Os membros dessa função também podem executar tarefas de sua propriedade e criar etapas de tarefa executadas como uma conta proxy existente. Membros dessa função podem executar as seguintes operações:

  • Exibir informações de configuração do conjunto de coleta (por exemplo, parâmetros de entrada de itens de coleta e a freqüência de coleta desses itens);
  • Obter informações internas criptografadas que só podem ser acessadas por um procedimento armazenado assinado (por exemplo, informações de conexão de data warehouse usadas para carregamento de dados);
  • Registrar em log eventos de tempo de execução do conjunto de coleta;
  • Permissões para configurar usar o Data Warehouse de gerenciamento;
  • Dependendo da tarefa, os usuários devem ser membros de uma ou mais das funções de banco de dados fixas fornecidas para acessar o data warehouse de gerenciamento. Em ordem de acesso mais privilegiado para acesso menos privilegiado, as funções são as seguintes:
  • mdw_admin – Member Dynamic View Administrator;
  • mdw_writer – Member Dynamic View Writer; e
  • mdw_reader – Member Dynamic View Reader.

Essas funções são armazenadas no banco de dados MSDB. Por padrão, nenhum usuário é membro dessas funções de banco de dados. A associação do usuário a elas deve ser explicitamente concedida. O usuários que são membros da função de servidor fixa sysadmin têm acesso total às exibições do coletor de dados. Porém, eles precisam ser adicionados explicitamente à funções do banco de dados para executar outras operações.

Função mdw_admin

Membros da função mdw_admin têm acesso de Leitura, Gravação, Atualização e Exclusão no data warehouse de gerenciamento. Estes membros podem executar as seguintes operações:

  • Alterar o esquema do data warehouse de gerenciamento quando necessário (por exemplo, adicionando uma tabela nova quando é instalado um novo tipo de coleta);
  • Onde houver uma alteração de esquema, o usuário também deve ser membro da função dc_admin para instalar um novo tipo de coletor, pois esta ação exige permissão para atualizar a configuração do coletor de dados no MSDB; e
  • Executar tarefas de manutenção no data warehouse de gerenciamento, como arquivo ou limpeza.

Função mdw_writer

Membros da função mdw_writer podem carregar e gravar dados no data warehouse de gerenciamento. Qualquer coletor que armazena dados no data warehouse de gerenciamento deve ser membro dessa função.

Função mdw_reader

Membros da função mdw_reader têm acesso de Leitura ao data warehouse de gerenciamento. Como o objetivo dessa função é dar suporte à solução de problemas fornecendo acesso a dados históricos, os membros dessa função não podem exibir outros lementos do esquema do data warehouse de gerenciamento.

Conclusão

O coletor de dados (Data Collector) é um componente do SQL Server 2008 utilizado para coleta diferentes conjuntos de dados, muitas vezes funcionando como uma uma agenda previamente definida, conforme escolha do usuário. Os dados são armazenados em um banco de dados relacional, também chamado de Data Warehouse de Gerenciamento.

O coletor fornece um ponto central para coleta de dados em seus servidores de banco de dados e aplicativos, que pode obter dados de várias fontes, não se limitando apenas aos dados de desempenho.

Com esta nova funcionalidade o SQL Server 2008 oferece para o administrador de banco de dados, a possibilidade de obtenção de informações relacionadas ao seu funcionamento, bem como, o que se relaciona a utilização de recursos da máquina para execução de suas transações. O Data Collection torna-se um grande aliado ao DBA ajudando em suas atividades diárias na administração e gerenciamento de seus banco de dados e servidores.

Bom pessoal, vou encerrando aqui mais esta série de artigos, desta vez, destaquei toda a estrutura, funcionamento e recursos existentes no Data Collection.

Espero que vocês tenham gostado, nos encontramos em breve nas próximas séries de artigos.

Até mais.

Anúncios

Sobre Junior Galvão - MVP

Profissional com vasta experiência na área de Tecnologia da Informação e soluções Microsoft. Graduado no Curso Superior em Gestão da Tecnologia de Sistemas de Informação. 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. Pós-Graduado em Gestão da Tecnologia da Informação Faculdade - ESAMC Sorocaba. 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 1995 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, Triggers. Experiência na Coordenação de Projetos de Alta Disponibilidade de Dados, utilizando Database Mirroring, Replicação Transacional e Merge, Log Shipping. Atualmente trabalho como Administrador de Banco de Dados no FIT - Instituto de Tecnologia da Flextronics, como também, Consultor em Projetos de Tunnig e Performance para clientes, bem como, Professor Titular na Fatec São Roque. 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. Possuo titulações e Reconhecimentos: Microsoft MVP, MCC, MSTC e MIE.
Esse post foi publicado em Dicas, Mundo SQL Server, VIRTUAL PASS BR e marcado , , , , , , , , , , . Guardar link permanente.

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s