Database
 sql >> Base de Dados >  >> RDS >> Database

Preenchendo a lacuna do Azure:instâncias gerenciadas


Se você está pensando em migrar seu ambiente do SQL Server para o Azure, você só tem algumas opções. Primeiro, você pode utilizar a solução PaaS do Banco de Dados SQL do Azure e mover um único banco de dados ou usar um pool elástico. Sua outra opção tem sido uma solução IaaS usando máquinas virtuais do Azure executando o Microsoft SQL Server. Em breve teremos uma terceira opção chamada Instância Gerenciada do Banco de Dados SQL.

As instâncias gerenciadas preenchem a lacuna entre o SQL Server local e o Azure Banco de dados SQL
As instâncias gerenciadas foram apresentadas pela primeira vez na conferência Microsoft Build na primavera de 2017 e, até agora, a visualização foi limitada a um pequeno número de clientes e consultores. As Instâncias Gerenciadas podem ser consideradas um híbrido entre uma versão completa do SQL Server e o Banco de Dados SQL do Azure. Bancos de dados únicos e elásticos são criados em um modelo de programação com escopo de banco de dados e as instâncias gerenciadas são criadas em um modelo de programação com escopo de instância. Isso torna as instâncias gerenciadas mais compatíveis com o SQL Server local.

As instâncias gerenciadas fornecem muito mais uma sensação de um SQL Server local, mas são criadas na mesma infraestrutura que o Banco de Dados SQL do Azure. O que o diferencia do Banco de Dados SQL do Azure é que ele apresenta uma instância inteira do SQL Server ao cliente. No Banco de Dados SQL do Azure, você configura um servidor, que na verdade é um contêiner, e pode ter vários bancos de dados nesse servidor, mas eles não podem se comunicar facilmente. Com instâncias gerenciadas, todos os bancos de dados da instância estão no mesmo SQL Server real, para que você tenha suporte total para consultas entre bancos de dados. Esse é um grande recurso para muitos aplicativos que, de outra forma, não seriam adequados para o Banco de Dados SQL do Azure, e acho que isso permitirá que muitos outros aplicativos do SQL Server migrem para a nuvem.

A funcionalidade no nível da instância agora é suportada. Isso inclui itens como tabelas temporárias globais, SQL Server Agent, Service Broker, replicação, Auditoria SQL e Common Language Runtime (CLR). As instâncias gerenciadas também podem oferecer suporte a bancos de dados de até 35 TB. Atualmente, a maior capacidade para um Banco de Dados SQL do Azure é de 4 TB na camada superior. Suspeito que isso possa mudar em breve e, novamente, abrirá a nuvem para mais aplicativos.

As instâncias gerenciadas também aproveitam todos os recursos da plataforma PaaS, incluindo backups automáticos, detecção de ameaças, avaliações de vulnerabilidade, alta disponibilidade, replicação geográfica, consultor de banco de dados e muito mais. Eu vi uma apresentação que estava discutindo como funciona o processo de failover automático e aprendi que os objetos no nível do servidor são replicados para a instância de failover. Isso significa que coisas como logins e trabalhos – pontos problemáticos para muitos de nossos ambientes hoje – são tratados para você.

No ano passado, ajudei vários clientes a migrar para o Banco de Dados SQL do Azure e um dos principais desafios é migrar os dados. Você não pode simplesmente executar um backup do SQL Server e restaurar para o Banco de Dados SQL do Azure. Fiquei muito satisfeito em saber que, com as instâncias gerenciadas do banco de dados SQL, podemos usar backups nativos do SQL Server e restaurar para instâncias gerenciadas, no entanto, você deve usar o mecanismo de backup para URL. Isso tornará as migrações para Instâncias Gerenciadas muito mais fáceis, no entanto, como as Instâncias Gerenciadas são criadas no Banco de Dados SQL do Azure, esse é um tíquete unidirecional:você não pode fazer backup de seus bancos de dados de Instâncias Gerenciadas e restaurar no local. Se você já decidiu trazer seu banco de dados de volta para o local ou fora das instâncias gerenciadas, terá que exportar seus dados.

Bancos de dados em instâncias gerenciadas estão muito mais prontos para migrar para Azure SQL Banco de dados
Por outro lado, como eles são criados na plataforma do Banco de Dados SQL do Azure, os bancos de dados individuais que você coloca em uma Instância Gerenciada podem ser migrados para seus próprios Bancos de Dados SQL do Azure individuais. Isso torna uma instância gerenciada um trampolim perfeito, onde você pode resolver as complicações de isolamento que o impedem de migrar diretamente para PaaS.

Estou curioso sobre a replicação ser suportada. Ainda não consegui descobrir se um banco de dados de instância gerenciada pode ser um editor ou se pode ser apenas um assinante, como um banco de dados SQL do Azure. Se puder ser um editor, essa poderá ser uma maneira eficaz de migrar de volta para o local. Eu realmente espero que, em um futuro próximo, tenhamos a capacidade de também restaurar backups nativos do SQL Server para bancos de dados SQL do Azure singleton. Parece que a tecnologia existe, só precisa ser expandida para o ambiente PaaS existente.

Outra observação interessante sobre as Instâncias Gerenciadas é que, como a tecnologia é construída no modelo do Banco de Dados SQL do Azure, a versão do SQL Server seguirá a do Banco de Dados SQL do Azure. Isso pode complicar as coisas com o suporte do fornecedor. Muitos fornecedores afirmam que certificam seu produto na versão X do SQL Server. Embora as instâncias gerenciadas ofereçam suporte a quase todos os recursos do SQL Server 2017, ela não usará a mesma versão de compilação, portanto, as verificações de versão programática serão complicadas. Seu melhor curso de ação aqui é pressionar o fornecedor, já que é improvável que a Microsoft vacile nessa posição, e não tenho dúvidas de que algumas dessas conversas serão desafiadoras.

Os fornecedores passarão pelo esforço de certificar seus produtos em instâncias gerenciadas ou isso se tornará um problema como o que experimentamos com a virtualização? Nos primeiros dias da virtualização, muitos fornecedores afirmaram que não suportavam seus produtos rodando virtualizados, no entanto, a Microsoft suportava totalmente o Windows X e o SQL Server X sendo virtualizados. Esperamos ver fornecedores embarcando e certificando seus produtos em instâncias gerenciadas. Eu certamente vejo alguns pioneiros do SQL Server por aí que passarão para instâncias gerenciadas após seus próprios testes.

Sempre que um cliente deseja migrar para a nuvem, a segurança é uma grande preocupação. As instâncias gerenciadas oferecem suporte VNET com endereços IP privados e VPN para redes locais. Isso pode permitir que um cliente proteja seu ambiente da Internet pública e tenha isolamento total.

Estou empolgado com as instâncias gerenciadas e mal posso esperar até que esteja mais amplamente disponível. Para clientes que gostariam de um ambiente gerenciado, mas precisam de uma solução mais rica em recursos do que um banco de dados SQL do Azure singleton ou elástico, acho que as instâncias gerenciadas seriam a opção perfeita. Houve uma lacuna entre o Banco de Dados SQL do Azure e o SQL Server em uma VM do Azure, pois muitos clientes precisam de mais do que as ofertas do Banco de Dados SQL do Azure, mas o SQL Server em uma VM do Azure ainda é mais manutenção e responsabilidade do que eles queriam. As instâncias gerenciadas realmente preenchem essa lacuna. Eles oferecem suporte a bancos de dados muito maiores, permitem migrações de dados mais fáceis, permitem consultas entre bancos de dados e não devem exigir nenhuma alteração de código, pois a plataforma é altamente compatível com o SQL Server local.

Em resumo, se sua organização estiver considerando uma mudança para um ambiente hospedado na plataforma do Banco de Dados SQL do Azure, você poderá escolher entre Bancos de Dados SQL do Azure individuais, pools elásticos ou Instâncias Gerenciadas. Dependendo das necessidades de sua aplicação, uma dessas soluções deve ser uma ótima opção. Caso contrário, você também tem a opção de executar uma instância tradicional do SQL Server em uma máquina virtual do Azure, que oferece recursos interessantes como backups gerenciados, replicação geográfica, Azure Site Recovery e muito mais. A Microsoft continua a investir na plataforma Azure fornecendo novos produtos e recursos que seus clientes precisam, e o próximo lançamento de instâncias gerenciadas é uma prova contínua desse foco. Fique atento, pois nos foi prometido uma prévia pública em um futuro muito próximo.