Principais métodos para gerenciar ambientes de banco de dados complexos Escrito por Dave Pearson, gerente sênior de projetos Resumo Introdução Este White Paper fornece métodos essenciais para gerenciar com sucesso as infraestruturas complexas de banco de dados atuais, incluindo o balanceamento das principais métricas comerciais, a compreensão dos desafios enfrentados pelos DBAs e a descoberta das ferramentas adequadas para monitorar e gerenciar o ambiente de banco de dados. Um banco de dados relacional lento pode impactar significativamente o desempenho das aplicações suportadas por ele. Os usuários podem emitir milhares de transações por minuto, que podem ser reparadas por dezenas de servidores de aplicações e da Web redundantes – e um único banco de dados. O banco de dados relacional deve manter a coerência e a disponibilidade, tornando-se um ativo altamente centralizado. Ele concentra as transações e coloca uma grande quantidade de pressão na pilha de banco de dados para operar em níveis ideais de desempenho e disponibilidade. Este é o motivo pelo qual o banco de dados é tão crítico, e também porque os DBAs que o gerenciam são mais do que administradores normais. Para gerenciar com sucesso esses ambientes de banco de dados complexos, é necessário equilibrar as principais métricas de negócios, compreender os desafios exclusivos do DBA e selecionar as ferramentas adequadas para a administração do banco de dados. Equilibrando as principais necessidades dos negócios Gerenciar o banco de dados e a equipe de DBA é um desafio complexo que exige atenção nas três métricas primárias de negócios: custo, serviço e risco. Custo Os salários do DBA representam o principal custo direto da equipe de banco de dados. O DBA de produção desempenha uma função especializada na organização de TI e, como resultado, geralmente é bem recompensado por isso. Gerenciar o banco de dados e a equipe de DBA é um desafio complexo que exige atenção nas três métricas primárias de negócios: custo, serviço e risco. Melhorar a produtividade da equipe de DBA é essencial para maximizar a rentabilidade. Frequentemente, as ferramentas que automatizam tarefas através de uma interface do usuário intuitiva são a primeira etapa para melhorar a produtividade do DBA. Para os DBAs que gerenciam bancos de dados críticos, a produtividade é medida de acordo com o número de bancos de dados que elas podem gerenciar enquanto mantêm os níveis de serviço. Serviço Os bancos de dados possuem uma expectativa de serviço que está implicitamente compreendida pelas equipes de administração ou formalizada em um nível de serviço. Geralmente, os níveis de serviço são definidos pela equipe de aplicação e passados adiante para os administradores de cada ativo na pilha de aplicações. Dada a função vital que o banco de dados representa para a aplicação, o nível de serviço herdado pelo DBA está alinhado à criticidade das aplicações e, normalmente, é medido pela disponibilidade e pelo tempo de resposta. Risco A natureza centralizada do banco de dados com relação aos outros componentes na pilha de aplicações faz com que ele seja altamente sensível a mudanças – e, com as mudanças, vem também os riscos. As mudanças de risco moderado são pequenas e incrementais (por exemplo, atualizações de sistema operacional, patches do banco de dados e tarefas de manutenção regulares, como backup, arquivamento de dados e reorganização do objeto). 2 Quando mudanças mais significativas são necessárias, no entanto, o risco para a estabilidade do banco de dados é muito maior. Atualizações importantes realizadas no hardware do servidor muitas vezes exigem tempo de inatividade, mas as atualizações feitas ao código de aplicação ou para uma nova versão principal do banco de dados, implicam em um maior risco do desempenho da aplicação ficar mais lento, como resultado da mudança. Equilibrar esses fatores exige intuição, bom senso e dados precisos. Compreensão dos novos desafios de DBA Suporte a aplicações – O cliente interno Tradicionalmente, as aplicações ofereciam suporte aos negócios e as operações de TI ofereciam suporte às aplicações. Os avanços da tecnologia, incentivados em grande parte pela expansão de mainstream da Internet, nos conduziram a aplicações que impulsionam os negócios diretamente, geram receitas e interagem com os clientes. A natureza crítica dessas aplicações gerou a necessidade de equipes de suporte dedicadas dentro da organização de aplicações. Essas equipes de suporte de aplicações às vezes incluem DBAs dedicados, porém mais frequentemente, o relacionamento se assemelha ao de um cliente interno, no qual os DBAs da organização de operações fornecem um suporte de três níveis para a equipe de aplicação. Nesses casos, o DBA enfrenta pressões divergentes e específicas das organizações de operações e de aplicação. Normalmente, os administradores de TI se concentram nos recursos que gerenciam, enquanto o suporte de aplicação tem como objetivo a qualidade do serviço. Consequentemente, a função central do banco de dados na pilha de aplicações exige que o DBA gerencie os recursos de maneira eficiente, além de ser altamente sensível à experiência de serviço dos usuários da aplicação. Desempenhar as duas funções simultaneamente pode ser desafiador para o DBA de produção. A terminologia da Biblioteca de infraestrutura de tecnologia da informação (ITIL) articula o dilema da dupla função de DBA e é útil ao comparar o gerenciamento de incidentes com o gerenciamento de problemas. O objetivo do ciclo de vida do gerenciamento de incidentes é restaurar o serviço o mais rapidamente possível para atender aos SLAs. O foco do gerenciamento de problemas é solucionar a principal causa dos erros e descobrir soluções permanentes – um processo que prioriza a precisão e não a velocidade durante a resolução de um problema. Esse foco na resolução do problema é essencial para atingir um estado de melhoria contínua, como quando a recorrência do problema é evitada e os níveis de serviço são melhorados Gerenciamento de ambientes complexos de banco de dados Por que ter várias plataformas? Um dos maiores desafios enfrentados pelas organizações de TI atualmente é o gerenciamento da complexidade de um ambiente, que é composto por vários sistemas operacionais, bancos de dados e aplicações. Além disso, grandes organizações precisam gerenciar essa complexidade em várias regiões. Os padrões de TI ajudam a alinhar as habilidades da equipe de administração e otimizar os custos operacionais. No entanto, quando uma aplicação (nova ou existente) cria o requisito para plataformas que estão fora do padrão definido pelo TI, normalmente o padrão é adaptado. A prática recomendada é manter as plataformas de pelo menos dois fornecedores concorrentes para evitar o excesso de exposição para influenciar a negociação de contratos de um único fornecedor. A consolidação de fornecedores reduz os custos operacionais associados ao gerenciamento multiplataforma, mas o excesso de consolidação aumenta o poder de fixação de preços dos fornecedores restantes, acabando potencialmente com a economia.1 Encontrar o número certo de fornecedores é crucial para otimizar os custos. A maioria das empresas — aproximadamente 90% — possui organizações de TI que gerenciam pelo menos duas plataformas de DBMS; geralmente, cada DBA é responsável por aproximadamente 35 bancos de dados.2 Grupos de aplicativos: transações e níveis de serviço Suporte de aplicação DBA de produção Administradores de TI Grupos OPS: administração de recursos e triagem Figura 1. O DBA de produção é responsável por gerenciar recursos e também monitorar os níveis de serviço. 5 de julho de 2008 (Número de identificação: G00159724), Quantos sistemas 2 de gerenciamento de banco de dados você deve ter? (em inglês), por Donald Feinberg, Jeff Comport 2 23 de fevereiro de 2010, Como aproveitar as novas formas de economizar nos custos de bancos de dados (em inglês), por Noel Yuhanna 1 3 A consolidação de fornecedores reduz os custos operacionais associados ao gerenciamento multiplataforma, mas o excesso de consolidação aumenta o poder de fixação de preços dos fornecedores restantes, acabando potencialmente com a economia. Como escolher ferramentas de terceiros Vários sites apresentam fornecedores terceirizados confiáveis porque eles fornecem medidas objetivas e gerenciamento de desempenho em várias plataformas de bancos de dados. As soluções de fornecedores terceirizados visam aumentar a produtividade de DBA e reduzir custos enquanto asseguram a alta qualidade dos serviços. A tecnologia de gerenciamento e administração especializada que opera de maneira independente da plataforma do banco de dados fornece um ganho de produtividade de no mínimo 20%, de acordo com o Forrester Research.3 No topo de tudo isso, estão os ganhos de produtividade obtidos pelos DBAs que são capazes de gerenciar cenários de problemas com agilidade e precisão. Ao solucionar a causa-raiz dos problemas mais rapidamente, suas habilidades podem ser aplicadas para evitar problemas, otimizar recursos e melhorar os tempos de resposta do usuário. Monitoramento holístico do banco de dados — Uma única visualização consolidada da integridade do banco de dados é fundamental para solucionar os desafios associados ao gerenciamento de vários sistemas de bancos de dados. A cobertura deve se estender por diversas camadas da aplicação e pilhas de bancos de dados para garantir que a visualização apresentada ao DBA seja precisa e facilite os fluxos de usuário que levam à resolução e prevenção de problemas, assim como a otimização de desempenho. Requisitos importantes para o monitoramento holístico incluem: 1.Uma visualização do desempenho de todos os componentes que potencialmente poderiam interromper operações de bancos de dados, incluindo o sistema operacional e máquinas virtuais. 2.Uma interface do usuário intuitiva que permite o gerenciamento do desempenho em diferentes plataformas, acomodando diversos níveis de habilidades do administrador. 3.Visibilidade da carga de trabalho da transação que é guiada até o banco de dados pelos usuários da aplicação e processos. 4.Profundidade suficiente para suportar análises detalhadas e atividades de otimização. 5.Um baixo custo total de propriedade, especialmente com relação à implantação e esforços de atualização. Cobertura abrangente — O banco de dados é independente do sistema operacional, assim como as máquinas virtuais e seus subsistemas de armazenamento com relação aos recursos. A cobertura desses componentes é necessária para isolar de maneira precisa a origem dos problemas. Uma interface do usuário intuitiva e entre plataformas — O aspecto mais visível da vantagem das empresas terceirizadas é a interface do usuário. O benefício central da neutralidade da plataforma é a tecnologia que resume a complexidade específica da plataforma, permitindo obter uma perspectiva voltada aos serviços no desempenho. O gerenciamento de plataforma cruzada melhora significativamente a produtividade de DBA e minimiza os custos de treinamento. Figura 2: a produtividade de DBA é diretamente influenciada pela qualidade da interface do usuário. 3 4 23 de fevereiro de 2010, Como aproveitar as novas formas de economizar nos custos de bancos de dados (em inglês), por Noel Yuhanna Carga de trabalho de transação da aplicação — O banco de dados está vinculado à aplicação pelas transações que estão direcionadas para o banco de dados. Medir a carga de trabalho da transação do banco de dados é a única maneira de relatar de maneira precisa a qualidade do serviço do banco de dados com relação aos usuários da aplicação, tarefas em lote e tarefas automatizadas. Medição detalhada — As complexidades dos bancos de dados modernos e as aplicações críticas suportadas exigem análises muito mais sofisticadas do desempenho do que o que é fornecido pelas métricas brutas do mecanismo do banco de dados. Os DBAs que buscam uma melhoria contínua devem compreender o desempenho para poder tomar boas decisões e evitar a criação de novos problemas, o que sempre é uma possibilidade ao se lidar com dados inadequados. Alcançar uma boa compreensão requer uma análise inteligente do histórico de desempenho, desde dados em tempo real àqueles que possuem semanas ou meses. Somente com o auxílio de dados históricos suficientes o DBA pode determinar tendências importantes, identificar condições crônicas e evitar o surgimento de problemas. A riqueza de dados é uma função de granularidade. O monitoramento tem uma abordagem de amostragem para coleta de métricas, para que a taxa da coleta determine a granularidade. Um monitoramento eficiente coleta dados em taxas que refletem a vitalidade do componente medido, mas também pode ajustar a taxa para aumentar ou diminuir a granularidade quando necessário (por exemplo, quando os volumes de carga são alterados ou durante a análise de diagnóstico de um problema). Obviamente, a sobrecarga de coleta deve ser mínima para assegurar que o custo da coleta não exceda o valor dos dados coletados. Esse é um fator importante na avaliação de uma tecnologia de monitoramento. Custo total de propriedade — A tecnologia que é projetada para reduzir os custos operacionais como uma parte fundamental de seu valor deve demonstrar um baixo custo total de propriedade (TCO). Os principais componentes de uma tecnologia de monitoramento que melhora uma TCO incluem: •Arquitetura centralizada •Minimização dos custos de implantação e atualização. •Descarregamento da sobrecarga de gerenciamento, armazenamento e apresentação longe da produção. •Facilidade de correlação entre instâncias, entre plataformas e entre domínios de dados e analisa os dados de desempenho. Figura 3: a análise detalhada da E/S do banco de dados ajuda a isolar as áreas problemáticas e pontos de acesso. 5 Um monitoramento eficiente coleta dados em taxas que refletem a vitalidade do componente medido, mas também pode ajustar a taxa para aumentar ou diminuir a granularidade quando necessário. •Coleta remota de produção •Reduz os custos de coleta apenas para a sobrecarga de consulta de coleta. •Facilita a implantação e as velocidades de atualizações evitando a necessidade de tocar no servidor de produção. • Modelagem de nível de serviço •O alinhamento de grupos de ativos para um determinado nível de serviço é um recurso essencial para um monitoramento desejado medir e relatar os aspectos qualitativos do desempenho. • Detecção automática do banco de dados •Permite que o monitoramento seja efetivamente rápido em grandes ambientes de bancos de dados, removendo a carga da equipe de DBA para especificar individualmente cada instância. •Interface do usuário eficiente e entre plataformas • Alerta de linhas de base adaptativas •Melhora o desempenho histórico para construir um intervalo de linha de base de desempenho "normal" para cada métrica coletada. As equipes de DBA de produção atuais devem gerenciar recursos de maneira eficiente, bem como monitorar de perto as transações conforme elas interagem com o banco de dados. Uma ferramenta de monitoramento que integra tais recursos e uma única visualização consolidada da integridade do banco de dados pode melhorar substancialmente o tempo de resolução e a produtividade de DBA enquanto controla os riscos. •Visa a incapacidade dos limites fixos em fornecerem alertas de aviso precisos, permitindo que eles mantenham o foco na proteção de limites críticos de recursos. •Relatórios que trazem problemas como desvios do comportamento normal com ótima precisão e pontualidade. • Reduz os custos de treinamento. •Acelera o período de resolução para DBAs de níveis variáveis de habilidades. Conclusão Figura 4: a linha de base adaptável otimiza a inteligência, precisão e pontualidade dos alertas 6 Para obter mais informações © 2013 Dell, Inc. TODOS OS DIREITOS RESERVADOS. Este documento contém informações proprietárias protegidas por direitos autorais. Nenhuma parte deste documento poderá ser reproduzida ou transmitida de nenhuma forma e por nenhum meio, eletrônico ou mecânico, incluindo fotocópias e gravações para qualquer propósito, sem a permissão por escrito da Dell, Inc. ("Dell"). Dell, Dell Software, o logotipo e os produtos da Dell Software, como identificados neste documento, são marcas registradas da Dell, Inc. nos EUA e/ou em outros países. Todas as outras marcas comerciais e registradas pertencem a seus respectivos proprietários. As informações deste documento são fornecidas em relação aos produtos da Dell. Este documento não concede nenhuma licença, explícita ou implícita, por obstrução ou de outra forma, a nenhum direito de propriedade intelectual, e esses direitos também não estão relacionados à compra de produtos Dell. EXCETO AS ESTABELECIDAS NOS TERMOS E CONDIÇÕES DA DELL, CONFORME ESPECIFICADO NO CONTRATO DE LICENÇA PARA ESTE PRODUTO, Sobre a Dell A Dell Inc. (NASDAQ: DELL) escuta seus clientes e fornece, globalmente, soluções de negócios e tecnologias inovadoras e serviços que eles valorizam e nos quais confiam. Para obter mais informações, acesse o site www.dell.com. Se você tiver dúvidas sobre o possível uso deste material, entre em contato com: Dell Software 5 Polaris Way Aliso Viejo, CA 92656 www.dell.com Consulte nosso site para obter informações do escritório regional e internacional. WhitePaper_KeyMethods4Managing_PL_2013-04-03 A DELL NÃO ASSUME NENHUMA RESPONSABILIDADE, SEJA ELA QUAL FOR, E RENUNCIA A TODA GARANTIA EXPLÍCITA, IMPLÍCITA OU ESTATUTÁRIA RELACIONADA A SEUS PRODUTOS, INCLUINDO, SEM LIMITAÇÃO, A GARANTIA IMPLÍCITA DE COMERCIABILIDADE, ADEQUAÇÃO A UM PROPÓSITO ESPECÍFICO OU NÃO VIOLAÇÃO. EM HIPÓTESE ALGUMA A DELL SERÁ RESPONSÁVEL POR QUAISQUER DANOS INDIRETOS, CONSEQUENCIAIS, PUNITIVOS, ESPECIAIS OU INCIDENTAIS (INCLUINDO, SEM LIMITAÇÃO, DANOS POR PERDA DE LUCROS, INTERRUPÇÃO DE NEGÓCIOS OU PERDA DE INFORMAÇÕES), DECORRENTES DO USO OU DA IMPOSSIBILIDADE DE UTILIZAR ESTE DOCUMENTO, MESMO QUE A DELL TENHA SIDO AVISADA DA POSSIBILIDADE DE TAIS DANOS. A Dell não se responsabiliza por qualquer garantia ou declaração referente à precisão ou à integridade deste documento e reserva-se o direito de fazer alterações em especificações e descrições de produtos a qualquer momento, sem aviso prévio. A Dell não se compromete a atualizar as informações contidas neste documento.