DataARTIGO

Azure SQL DB Managed Instance

Já ficou sabendo do preview público do Azure SQL Database Managed Instance? Neste artigo, Fabrício Lima explica o que é e como ele funciona.

Azure SQL DB Managed Instance
Imagem: Fabrício Lima

Fala, pessoal!

No mês passado, enquanto estava participando do MVP Summit na sede da Microsoft, em Redmond-WA, eles anunciaram a liberação de um preview público de um negócio chamado Azure SQL DatabaseLeia tambémManaged Instance – Consigo fazer um Join entre tabelas de bases diferentes?Data · mai 2019 Managed InstanceLeia tambémManaged Instance – Criando minha primeira instânciaData · mai 2019.

Conversando com alguns clientes, quase nenhum conhecia isso, então resolvi fazer este artigo para começar a explicar pra vocês do que se trata e como isso pode te ajudar.

O que é Azure SQL Database Managed Instance?

Antes de falar do Managed Instance (MI para os íntimos), quero falar um pouco do nosso cenário atual de SQL ServerLeia tambémSQL AlwaysOn – Boas Práticas para instalar o Cumulative UpdateData · out 2020 no Azure.

Hoje temos duas formas de levar nosso banco de dados SQL Server para o Azure.

1 – Contratando apenas uma base de dados com o Azure SQL Database (Paas – Platform as a Service)

Nesse modelo você contrata uma ou mais bases de dados no Azure, com uma determinada capacidade de performance, e se conecta via Management Studio e aplicações normalmente. Muito fácil e rápido (poucos cliques).

Benefícios:

  • Muito fácil e rápida a disponibilização de uma base de dados para a sua aplicação
  • Custo acessível até para empresas pequenas
  • Não precisa se preocupar com aplicação de Patch de segurança, manter um Windows Server e administrar um servidor por completo
  • Ao criar uma base, o Azure garante a replicação dessa base através do Azure Storage na versão Basic/Standard
  • Na premium temos um AlwaysOn configurado pelo Azure
  • Conseguimos criar uma replicação geográfica com poucos cliques e usá-la como ReadOnly para apontar nossos relatórios para lá
  • Temos backup automático
  • Seu SQL Server já se mantém atualizado com a última versão e novas features
  • Entre outros benefícios

Dificuldades:

  • Não temos como configurar o Database Mail para mandar e-mails de procedures
    Linked Server tem que ser reescrito de outra forma (mais trabalhosa)
  • Não tem o nosso querido SQL Server Agent, mas é possível fazer automatização de outra forma (bem mais trabalhosa)
  • Você não consegue dar um JOIN simples entre duas databases igual fazemos aos montes hoje em dia, em nossas aplicações (CROSS DATABASE)
  • Com essas dificuldades, algumas aplicações terão que ser ajustadas para funcionar corretamente no Azure SQL
  • Database como um serviço (PaaS)

2 – Contratando uma VM (IaaS – Infraestrutura as a Service)

Benefícios:

  • Conseguimos migrar nossa aplicação para o Azure sem ter que fazer adaptações.Nada muda na nossa administração – o servidor está apenas em um novo local
  • Não precisamos manter um datacenter interno, que é bem trabalhoso e custoso

Dificuldades:

  • Ainda temos que manter o Windows Server e atualizações de Patchs
  • Se quisermos ter a base do SQL Server replicada, temos que realizar um projeto de Alwayson por nossa conta
  • O time de produto do SQL Server trabalha demais – hoje temos novas versões do SQL Server com um tempo curto de diferença. Em uma VM, você tem que bancar esses projetos de migrações (2008 > 2012 >2014 > 2016 – 2017)
  • Devido a essa migração não precisar de alterações na aplicação, tenho mais clientes indo para o Azure, como VM (Iaas) do que como Azure SQL Database (Paas)

Aí que entra o nosso novo melhor amigo chamado Azure SQL Database Managed Instance (que também é PaaS).

O Managed Instance, é um meio termo dessas duas soluções que tínhamos até hoje. Ele reúne os benefícios do Azure SQL Database (Paas) com o da VM (IaaS), que é não ter que alterar nossa aplicação.

Ou seja, podemos pegar nosso SQL Server como está hoje aí na nossa empresa, usar uma ferramenta de migração simples que a Microsoft também vai nos disponibilizar e começar a utilizar nosso SQL na nuvem.

Benefícios do Azure SQL Database Managed Instance

  • Não precisamos alterar quase nada das nossas aplicações para migrar para o Managed Instance
  • Sua instância no MI do Azure fica completamente isolada de outros clientes através de uma VNET
  • Não precisa se preocupar com aplicação de patch de segurança, manter um Windows Server e administrar um servidor por completo.
  • Ao criar uma base, automaticamente ela já é replicada entre outros dois servidores no mesmo datacenter (AlwaysON) – isso na versão Business Critical
  • Temos backup automático e conseguimos restaurar uma base até um determinado momento.
  • Seu SQL Server já se mantém atualizado com a última versão e novas features. Não vai precisar pagar um DBA para migrar a versão do seu SQL Server.
  • A contratação do Managed Instance vai ser por vCores, e não por DTU, como era o Azure SQL Database.

Segue abaixo duas leituras para aprenderem mais um pouco sobre o assunto:

Se você ainda estava com o pé atrás de ir para o Azure SQL Database por causa da falta de features ou adaptações que você tinha que fazer nos seus sistemas, agora essa desculpa acabou. Sua migração para o Azure está cada vez mais próxima.

Abraços!

Bacharel em Ciência da Computação pela UFES, trabalha com SQL Server desde 2006 e possui certificações desde a versão do SQL Server 2000.

Ver perfil