› Movendo os bancos de dados para a nuvem
27.08.2014 às 08h50
https://canalte.ch/SL8B
Por Gerardo Dada* Parece que todas as organizações estão analisando o que pode ser movido – ou deve ser movido – para a nuvem. No entanto, a nuvem não é claramente a resposta para tudo; como acontece com qualquer tecnologia, existem vantagens e desvantagens. Assim, é importante que todos os profissionais de TI entendam como e quando a nuvem é vantajosa para os seus aplicativos. Nesse processo de avaliação e no planejamento da migração de aplicativos para a nuvem, os bancos de dados são geralmente o elemento mais difícil de entender. É claro que os dados são o coração de todo aplicativo, por isso é essencial saber como os bancos de dados podem funcionar de forma confiável na nuvem. Veja algumas ideias e recomendações para ter em mente quando se pensa em mover os bancos de dados para a nuvem: 1. Tudo começa com o desempenho Se eu recebesse um centavo toda vez em que ouvisse "a nuvem é muito lenta para bancos de dados", com certeza eu teria o suficiente para comprar um cappuccino duplo. A incerteza do desempenho é a principal preocupação que impede os profissionais de mover os bancos de dados para ambientes virtualizados ou em nuvem. No entanto, essa preocupação é muitas vezes infundada, uma vez que muitos aplicativos têm requisitos de desempenho que são fáceis de atender em uma série de arquiteturas de nuvem diferentes. A tecnologia de nuvem evoluiu nos últimos três anos e hoje já oferece várias opções de implantação para bancos de dados, alguns delas com capacidades de desempenho muito altas. 2. A visibilidade pode ajudar A maneira mais fácil de resolver problemas de desempenho é botar um monte de hardware para funcionar, mas obviamente essa não é uma boa prática e não é muito rentável. Uma ferramenta de monitoramento do banco de dados pode ajudá-lo a entender os verdadeiros requisitos de banco de dados e de recursos do seu aplicativo. Podemos pensar em coisas como CPU, armazenamento, memória, latência e taxa de transferência de armazenamento (o IOPS pode enganar); exigências planejadas de crescimento e backup de armazenamento; oscilação de recursos com base no pico de utilização de aplicativos ou nos processos em lote; e em dependências de conexão de dados – além da conectividade dos aplicativos, pode haver outros requisitos de troca de dados entre aplicativos, backups ou fluxo de dados de entrada. Uma das vantagens da nuvem é a capacidade dinâmica de dimensionar vertical ou horizontalmente os recursos. Assim, em vez de ser fonte de preocupações das incertezas de desempenho, ela pode realmente lhe dar a tranquilidade de saber que a quantidade certa de recursos pode ser alocada para seus aplicativos a fim de garantir o desempenho adequado. O essencial, no entanto, é saber quais são essas exigências. 3. Faça um test drive Um dos benefícios óbvios da nuvem é o baixo custo e a acessibilidade. Mesmo que você ainda não esteja elaborando um plano de migração, é uma boa ideia brincar com os bancos de dados da nuvem para se familiarizar, testar e aprender. Em uma hora de seu tempo, você pode colocar um banco de dados funcionando na nuvem. Configure-o, brinque um pouco e depois jogue fora. O custo é mínimo. Com um pouco mais de tempo e alguns reais a mais, você pode até mesmo mover uma cópia de um banco de dados de produção para a nuvem, testar as opções de implantação e aprender como aspectos específicos ao seu aplicativo e ao banco de dados vão funcionar na nuvem. 4. Planeje cuidadosamente seu modelo de implantação A nuvem oferece várias opções de implantação que devem ser consideradas. Por exemplo, o Banco de Dados como Serviço (DBaaS) oferece simplicidade na implantação, automação e um serviço gerenciado. Aproveitar a Infraestrutura como Serviço (IaaS) é uma alternativa para executar instâncias do banco de dados em servidores de nuvem, que fornece mais controle e que se parece com uma implantação física tradicional. Há também várias opções de armazenamento, incluindo armazenamento de bloco, unidades SSD, IOPS garantido, conexões dedicadas e instâncias otimizadas de bancos de dados. Como a nuvem é principalmente um ambiente compartilhado, também é importante compreender e testar a uniformidade e a variabilidade do desempenho, e não apenas o desempenho teórico no pico. 5. Dê o passo Não há um plano de migração único que abarque todos os casos de uso. Em vez de tentar usar uma fórmula para fazer a mudança para a nuvem, recomendo falar com seu provedor de nuvem, explicando seu ambiente e obtendo a orientação adequada. Em geral, também é uma boa ideia criar um ambiente duplicado na nuvem e verificar se ele funciona bem antes de trocar o aplicativo de produção. E, além das exigências de recuperação e backup de dados, também é importante considerar os servidores de replicação ou de espera em uma região diferente de onde seus servidores principais estão. 6. Monitore e otimize Assim como ocorre com as implantações no local, é importante monitorar e otimizar seu ambiente de nuvem depois que esteja funcionando. As ferramentas de otimização do banco de dados oferecem análises do tempo de espera, e a correlação de recursos pode acelerar as operações do banco de dados de forma significativa, alertar quando há problemas (antes que se tornem grandes problemas), aumentar o desempenho do aplicativo e monitorar os recursos para ajudar no planejamento. Os administradores de bancos de dados, os desenvolvedores e as operações de TI podem se beneficiar com uma ferramenta de análise de desempenho que lhes permite escrever um bom código e identificar a causa raiz de tudo o que poderia estar deixando lento o banco de dados, como consultas, eventos de armazenamento, recursos de servidor etc. A nuvem está evoluindo rapidamente. Está ficando melhor, mais confiável e mais flexível o tempo todo. Assim como ocorreu há cinco anos, quando a maioria das pessoas não poderia imaginar a transformação que a nuvem promoveria hoje, devemos esperar que a tecnologia continue evoluindo no mesmo ritmo nos próximos cinco anos. Esta é mais uma razão para começar a experimentar a nuvem hoje. É uma jornada que exige quebrar alguns paradigmas e mudar sua forma de ver as coisas, mas também uma jornada que pode fornecer benefícios significativos para seus aplicativos e seu trabalho. * Gerardo Dada é vice-presidente de marketing e estratégia de produtos da SolarWinds.