Banco de Dados PaaS no Microsoft Azure – Database-as-a-Services [DBaaS] Tipos e Opções

Posted on julho 18, 2017

0


Image result for paas icon

Introdução

Estamos presenciando uma grande mudança na tecnologia, agora com sistemas e aplicações indo para Nuvem, passamos a ter não somente o SQL Server em uma Máquina Virtual como opção, além do mais, saímos do modelo – IaaS [Infraestrutura como um Serviço] para uma modelo mais evoluído, escalável e de fácil acesso, o PaaS [Plataforma como um Serviço], iremos falar dos benefícios desse modelo, assim como as vantagens para a empresa e como podemos usar nosso conhecimento adquirido para trazer evoluções contínuas para sua empresa e seu negócio.

PaaS – [DBaaS]

O PaaS – nomeado de plataforma como um serviço tem como principal objetivo abstrair a complexidade de administração das aplicações e serviços, nada mais é do que passar a complexidade de gerenciamento para a Nuvem, com isso você passa a ficar com o que é mais importante para sua empresa, o negócio. Esse modelo basicamente nasceu na computação na Nuvem, dado as infinitas possibilidades de escalabilidade e acesso de recursos que agora passam a ser facilmente acessíveis.

Praticamente todas as empresas visionárias e grandes estão apostando em modelos PaaS e SaaS, desde 2015, tenho me envolvido em projetos de migração do modelo IaaS para o PaaS. Um dos grandes fatores para isso é deixar com que a Nuvem faça o trabalho difícil de garantir SLA, alta disponibilidade, replicação dos dados, saúde do ambiente, monitoramento e escalabilidade do serviço oferecido.

Podemos passar um bom tempo falando dos benefícios e da aposta da Microsoft para com o modelo PaaS. Se repararem, praticamente todo o esforço da Microsoft no Azure tem sido, transformar e mudar softwares para esse modelo, essa é a grande evolução do mercado, automatizar e auto-gerenciar recursos para que o usuário final possa estar focado somente no negócio da empresa.

Dentre alguns motivos para ir para esse modelo, listo os que mais acho relevante:

– Rápida Inovação

– Foco no Negócio

– Economia de Gastos

– Maximizar UpTime da Aplicação

– Fácil Escalabilidade

Tipos de Banco de Dados no Microsoft Azure

Image result for database types icon

Atualmente, pequenas, médias e grandes empresas procuram o modelo PaaS com o principal objetivo de prover escalabilidade para seu negócio, para banco de dados usamos o termo DBaaS [Database-as-a-Services], que se refere ao mesmo modelo PaaS só que para banco de dados. Agora a responsabilidade e gerenciamento passa a ser da Nuvem, sem a necessidade de máquinas virtuais para instalar ou configurar seu ambiente de banco de dados. Para a Microsoft esse mundo começou em 2010 com o lançamento do Azure SQL DB, um banco de dados totalmente gerenciado pela Microsoft em sua nuvem chamada Azure.

Estamos em 2017 e muitas coisas mudaram desde então, Microsoft Azure, expandiu sua carta de ofertas de DBaaS para diversos modelos e tipos, iremos agora entender um pouco de cada serviço de banco de dados hoje disponível na Nuvem da Microsoft.

Azure SQL Database [Azure SQL DB]

O Azure SQL DB é o grande precursor do modelo PaaS [DBaaS] no Microsoft Azure, lançado em 2010 sofreu diversas mudanças e alterações porém atualmente com o número de mais de 1 milhão de banco de dados criados nesse modelo, passa a se tornar o recurso de banco de dados PaaS mais maduro da Microsoft. O Azure SQL Database provê diversas facilidades em termos de gerenciamento, alta disponibilidade, escalabilidade e rastreabilidade para solução de problemas de performance.

Para aplicações que nasceram na Nuvem e precisam de um banco de dados relacional e escalável, o Azure SQL DB é uma das melhores opções para seu negócio. Aqui você pode verificar aonde o Azure SQL DB melhor se aplica:

– Aplicações Criadas na Nuvem

– Banco de Dados que Necessitam de Alta Disponibilidade e Planos de Disaster Recovery

– Sem Necessidade de Gerenciamento de Máquinas Virtuais

– Banco de Dados com Tamanho = a 1 TB

– Facilidade de Particionamento Vertical e Horizontal

– Eliminação de Custos de Hardware e Administrativo

– Garantia de SLA

Azure SQL Data Warehouse [ASDw]

O Azure SQL Dw é a oferta da Microsoft para quem procura escalabilidade para projetos de BI e Data Warehousing no Microsoft Azure. Com a facilidade de criar nodes para processamento massivo de dados, o Azure SQL Dw é a proposta para empresas que procuram processar petabytes de informação em minutos e utilizar a Nuvem para paralelizar e armazenar grandes montantes de dados. Com a visão de computação e armazenamento segregado, o Azure SQL Dw faz com que a complexidade de gerenciar a administrar modelos OLAP fique ainda mais fácil.

Quando usar o Azure SQL Dw:

– Modelo PaaS para Data Warehousing, Gerenciado e Administrado pelo Microsoft Azure

– Escalabilidade de Execução Paralela em Múltiplos Nodes

– Redução de Custo de Processamento, Possibilidade de Pausar e Resumir

– Facilidade de Armazenamento de Petabytes

Em algum momento, seu projeto de Data Warehouse ou BI, foi afetado por tempo de processamento, o processo que executava em 30 minutos agora passa a ser executado em 2 horas, isso devido a quantidade de registros que crescem a cada dia em sua empresa. Com o Azure SQL Dw, a possibilidade de escalabilidade é infinita, fazendo com que você possa escolher em quanto tempo você deseja processar o seu Data Warehouse. Aqui você pode ver alguns clientes que usam o Azure SQL Dw assim como as novidades do produto.

Azure DB para MySQL e PostGreSQL

Anunciado recentemente, agora o MySQL e o PostgreSQL passam a ser uma oferta DBaaS no ecossistema do Microsoft Azure na família do Azure SQL DB. Agora toda a complexidade de instalação, configuração, alta disponibilidade e gerenciamento é deixado para traz e desenvolvedores passam a se preocupar somente com a codificação da aplicação.

https://techcrunch.com/2017/05/10/microsoft-launches-azure-database-for-mysql-and-postgressql/

Azure CosmosDB

Imagine a possibilidade de ter acesso um banco de dados globalmente distribuído para sua aplicação, com múltiplos modelos, totalmente escalável e com rápido acesso dos dados em locais diferentes do globo, esse é o Azure CosmosDB. o Azure CosmosDB é a nova proposta e visão de futuro na área de banco de dados do Microsoft Azure, com a possibilidade de múltiplos modelos [APIs]  ele passa a ser o único serviço PaaS no mundo a oferecer os seguintes tipos de banco de dados em um só serviço.

– Key-Value

– Column-Family

– Documents

– Graph

Azure Cosmos DB is Microsoft's globally distributed database service with elastic scale out, guaranteed low latency, five consistency models, and comprehensive guaranteed SLAs

Colocando o mundo Relacional e Não-Relacional lado a lado esse novo produto traz como capacidade as seguintes relações

– Distribuição Global dos Dados

– Escalabilidade Horizontal

– Latência < 10 ms para Leitura e < 15 ms para Escrita com 99% de Garantia

– Alta Disponibilidade

– Possibilidade de Múltiplos Modelos

5 Modelos de Consistência

https://www.youtube.com/watch?v=aAy635iBB50

Azure Managed Instance

Em Maio de 2017, um novo produto foi anunciado para fazer parte da família do Azure SQL DB. O Azure Managed Instance ainda não lançado oficialmente e em Private Preview, irá oferecer 100% de compatibilidade com o SQL Server em Máquinas Virtuais. Será possível agora usar SQL CLR, SQL Server Agent e Cross-Database Query dentro da Nuvem da Microsoft.

https://azure.microsoft.com/en-us/blog/new-options-to-modernize-your-application-with-azure-sql-database/ e https://www.pythian.com/blog/azure-sql-managed-instance-new-member-of-the-family/

Conclusão

Como profissionais de banco de dados, agora precisamos nos atentar a grande mudança no mercado para o modelo PaaS e entender as novas possibilidades que podem ser oferecidas para seus clientes. Como recomendação, sugiro que se preparem e estudem sobre essas novas propostas, porque bem provável que você passe a necessitar desse conhecimento em um futuro bem próximo.