Mostrando postagens com marcador Hernando Santana. Mostrar todas as postagens
Mostrando postagens com marcador Hernando Santana. Mostrar todas as postagens

quarta-feira, 19 de abril de 2017

Banco de dados na nuvem: Por onde começar?

Por Hernando Santana Pinto
Em 18/04/2017 no site Profissionais de TI

A primeira pergunta que devemos responder é: O meu aplicativo está na nuvem? Se está, via de regra, o banco de dados também deve estar. Parece óbvio, mas já observei sérios problemas em sistemas web por questões de latência – demora para estabelecer a conexão entre o aplicativo e o banco de dados. Como quase tudo na área de TI, há exceções, mas via de regra o banco de dados deve estar na mesma rede do aplicativo web conectado a ele.
Para casos específicos, soluções específicas. Se o seu sistema é um app Android, iOS ou Windows, existe a grande possibilidade de você precisar de um cache local para armazenamento dos dados principais, perfis de usuário, etc… Há diversas soluções possíveis, muitas fornecidas pelos próprios fabricantes dos sistemas operacionais, como Google e Microsoft, mas nesse artigo o foco são os aplicativos web, aqueles acessados a partir de um navegador como Chrome ou Firefox.
profissional-tarefas-nuvem-cloud-computing
Se o seu aplicativo já está na nuvem, ou ainda vai ser desenvolvido na nuvem, o ideal é deixar o banco de dados na mesma nuvem. Não faz sentido hospedar o seu sistema na AWS e usar o banco de dados SQL Database no Azure. Como falamos no artigo anterior, há diversas opções a diferentes custos e de diferentes portes, a seguir vamos tratar de alguns. Quando se trata de armazenamento de dados na nuvem há uma infinidade de produtos e soluções muito diferentes, aqui trataremos em especial dos bancos de dados relacionais, como SQL Server, Oracle, DB2, MySQL e similares.
A AWS possui essencialmente duas maneiras para armazenar os seus dados, o serviço de banco de dados gerenciado RDS e a possibilidade de utilizar VMs no serviço EC2. No RDS estão disponíveis MySQL, SQL Server, PostgreSQL, Oracle, MariaDB e uma excelente opção proprietária chamada Aurora, baseada no serviço S3 e totalmente compatível com o MySQL, há uma versão beta compatível com PostgreSQL.
Utilizar uma máquina virtual te dá a sensação de administrar um banco de dados “on premise”, uma instalação totalmente customizada, apesar de existirem alguns templates já configurados com a pré-instalação do sistema operacional e aplicação. Nesse caso tanto a AWS quanto o Azure são muito similares.
Sobre banco de dados gerenciados, o RDS oferece muitas opções: você escolhe o tamanho da instância baseado na necessidade de processador, memória e throughput de rede necessários, seleciona o tipo de disco (prefira sempre SSD) e a sua capacidade. Outra opção é se vai utilizar a classe Standard, Multi-AZ ou read replica. Standard é uma instância standalone, que pode possuir ou não uma replicação somente para leitura (read replica). Multi-AZ é uma replicação que garante o failover em caso de problemas e também mantém o banco ativo mesmo numa janela de upgrade, pois atualiza cada uma das instâncias separadamente.
O SQL Database, do Azure, é um banco de dados gerenciado baseado em SQL Server e que também oferece uma variedade de opções e pode ser acessado normalmente via SQL Server Management Studio como uma base local, desde que o IP esteja liberado. Existem ferramentas nativas que facilitam a importação da sua base de dados local para a nuvem em ambas as plataformas, MS e AWS.
Por fim, além dos tradicionais bancos de dados relacionais há opções de bancos de dados OLAP, para relatórios gerenciais, datawarehouse e sistemas de Business Intelligence (BI). A Microsoft oferece o SQL Data Warehouse, uma solução também baseada no SQL Server, gerenciada, flexível e poderosa que pode ser integrada com diversos outros serviços como o Azure Analysis Services, entre outros.
A AWS oferece o Amazon Redshift, uma base de dados proprietária mas muito poderosa, trabalha com o conceito de cluster com processamento paralelo e, por ser compatível com o PostgreSQL, pode ser conectada com qualquer ferramenta compatível que utilize drivers JDBC ou ODBC.
Há uma infinidade de produtos como NoSQL, caches em memória, analytics, Hadoop, entre outras. Podemos tratar desses produtos ou detalhar algum dos serviços citados acima nos próximos artigos. Deixe as suas sugestões nos comentários, serão muito bem vindas e servirão de base para os próximos artigos.

Hernando Santana Pinto
- 20 anos de experiência em TI, grandes conhecimentos em arquitetura, análise e desenvolvimento de sistemas, cloud computing, integração de sistemas e administração de bancos de dados.
- Gerenciamento de projetos e equipes de desenvolvimento de software, monitoramento, melhoria contínua, aplicação de melhores práticas de mercado e constante integração com as áreas de negócio.
- Grande experiência em arquitetura de sistemas e modelagem de bancos de dados, tendo coordenado o desenvolvimento de diversos sistemas web em PHP, bancos de dados SQL Server, MySQL e NoSQL utilizando a nuvem da AWS – Amazon Web Services, entre os quais destaco o Aprova Concursos, sistemas para diversas instituições ensino a distância (EAD), tanto e-commerces (lojas virtuais) quanto e-learnings, também chamados LMS ou AVA - Ambiente Virtual de Aprendizagem.
- Conhecimento em metodologias ágeis - SCRUM.
- Microsoft Certified Professional, MCP - MCPS - Exames 70-461 e 70-462 – SQL Server 2012/2014.

quarta-feira, 22 de março de 2017

GOOGLE CLOUD CHEGANDO PARA INCOMODAR AWS E AZURE?

Já faz muito tempo que a AWS é a líder mundial em Cloud Computing, seja no quadrante mágico do Gartner ou mesmo numa pesquisa informal com profissionais da área de TI. Cloud computing tornou-se quase sinônimo de Amazon Web Services.
A Microsoft segue de perto a AWS com o Azure, há uma excelente competição no lançamento de novas funcionalidades e baixa nos preços, o que gera uma maior concorrência e acaba beneficiando todo o mercado de cloud. A concorrência acirrada acaba por oferecer também produtos melhores e mais baratos.
google-cloud-nuvem-hospedagem
Há diversos outros provedores de serviços em nuvem, desde grandes corporações como IBM e HP até pequenos que tentam manter-se com serviços diferenciados mais específicos ou explorando determinados nichos do mercado, no entanto, ainda não havia claramente um competidor à altura (nas nuvens!) capaz de fazer frente aos dois líderes gigantes.
Mas isso pode estar prestes a mudar. Outro gigante da tecnologia está investindo bilhões de dólares, segundo a Business Insider são US$ 30 bilhões, para melhorar os serviços em nuvem e já possui um portfólio invejável: Coca-Cola, HSBC, Colgate-Palmolive, Verizon, eBay e Disney são alguns dos clientes do Google Cloud.
Além disso, recentemente o blog do Google anunciou uma parceria com a SAP, e os tradicionais produtos como o SAP HANA (entre outros) já estão certificados para utilizar sistemas e bancos de dados de missão crítica na plataforma de nuvem do Google.
Ecossistema, essa é a palavra usada pelo Google para identificar a integração da sua plataformas com outras tecnologias próprias e de parceirias como a Intel, Accenture, Veritas, entre outras.
São 4 os eixos principais: Application DevelopmentData AnalyticsMachine Learning e Infrastructure. Como não poderia ser diferente, a integração com o sistema operacional Android e os Chromebooks também é facilitada e torna-se um atrativo a mais para os desenvolvedores.
Somente o tempo poderá responder o quanto essa investida do Google irá incomodar a Microsoft e a Amazon, mas uma coisa é certa: o mercado de cloud vem se consolidando e já deixou de ser uma opção, é praticamente mandatório para qualquer tamanho de empresa o consumo de serviços em nuvem, e a entrada desse “novo” gigante no mercado só nos faz esperar por serviços melhores e mais baratos.
O Google está divulgando muito a sua plataforma de cloud, vejo diariamente posts patrocinados em redes sociais como LinkedIn e Facebook. E para você, profissional de TI, que gostaria de experimentar a Google Cloud Platform, crie uma conta e ganhe US$ 300 em créditos gratuitos para usar no período de um ano – os concorrentes também possuem políticas similares.