Descrever os serviços e recursos do SQL do Azure
SQL do Azure é um termo coletivo para uma família de serviços de banco de dados baseados no Microsoft SQL Server no Azure. Os serviços específicos de SQL do Azure incluem:
- SQL Server em VMs (Máquinas Virtuais) do Azure – uma máquina virtual em execução no Azure com uma instalação do SQL Server. O uso de uma VM torna essa opção uma solução de IaaS (infraestrutura como serviço) que virtualiza a infraestrutura de hardware para computação, armazenamento e rede no Azure, tornando-a uma ótima opção para migração "lift-and-shift" de instalações locais existentes do SQL Server para a nuvem.
- Instância Gerenciada de SQL do Azure – uma opção de PaaS (plataforma como serviço) que fornece quase 100% de compatibilidade com instâncias de SQL Server locais, abstraindo o hardware e o sistema operacional subjacentes. O serviço inclui gerenciamento automatizado de atualizações de software, backups e outras tarefas de manutenção, reduzindo a carga administrativa do suporte a uma instância de servidor de banco de dados.
- Banco de Dados SQL do Azure – um serviço de banco de dados de PaaS totalmente gerenciado e altamente escalonável projetado para a nuvem. Esse serviço inclui os principais recursos de nível de banco de dados do SQL Server local e é uma boa opção se você precisa criar um aplicativo na nuvem.
- SQL do Azure no Edge – um mecanismo SQL que é otimizado para cenários de IoT (Internet das Coisas) que precisam trabalhar com transmissão de dados de séries temporais.
Observação
O SQL do Azure no Edge foi incluído nesta lista para torná-la completa. Vamos nos concentrar nas outras opções para cenários mais gerais de bancos de dados relacionais neste módulo.
Comparar serviços de SQL do Azure
-- | SQL Server em VMs do Azure | Instância Gerenciada do Azure SQL | Banco de Dados SQL do Azure |
---|---|---|---|
Tipo de serviço de nuvem | IaaS | PaaS | PaaS |
Compatibilidade do SQL Server | Totalmente compatível com instalações físicas locais e virtualizadas. Aplicativos e bancos de dados podem ser migrados facilmente com o modelo "lift-and-shift" sem alteração. | Quase 100% de compatibilidade com SQL Server. A maioria dos bancos de dados locais pode ser migrada com alterações mínimas no código, usando o serviço de Migração de Banco de Dados do Azure | Dá suporte à maioria dos principais recursos de nível de banco de dados do SQL Server. Alguns recursos que dependem de um aplicativo local podem não estar disponíveis. |
Arquitetura | Instâncias do SQL Server são instaladas em uma máquina virtual. Cada instância pode dar suporte a vários bancos de dados. | Cada instância gerenciada pode dar suporte a vários bancos de dados. Além disso, os pools de instâncias podem ser usados para compartilhar recursos com eficiência em instâncias menores. | Você pode provisionar um banco de dados individual em um servidor dedicado e gerenciado (lógico) ou você pode usar um pool elástico para compartilhar recursos entre vários bancos de dados para aproveitar a escalabilidade sob demanda. |
Disponibilidade | 99,99% | 99,99% | 99,995% |
Gerenciamento | Você deve gerenciar todos os aspectos do servidor, incluindo o sistema operacional e as atualizações, a configuração, os backups e outras tarefas de manutenção do SQL Server. | Atualizações, backups e recuperação totalmente automatizados. | Atualizações, backups e recuperação totalmente automatizados. |
Casos de uso | Use essa opção quando precisar migrar ou estender uma solução de SQL Server local e manter o controle total sobre todos os aspectos da configuração do servidor e do banco de dados. | Use essa opção para a maioria dos cenários de migração na nuvem, especialmente quando você precisar de alterações mínimas nos aplicativos existentes. | Use essa opção para novas soluções de nuvem ou para migrar aplicativos que têm dependências mínimas no nível da instância. |
SQL Server em Máquinas Virtuais do Azure
O SQL Server em Máquinas Virtuais permite usar versões completas do SQL Server na nuvem sem precisar gerenciar o hardware local. É um exemplo de abordagem de IaaS.
O SQL Server em execução em uma máquina virtual do Azure replica com eficiência o banco de dados em execução no hardware local real. Migrar do sistema em execução no local para uma máquina virtual do Azure não é diferente de mover um banco de dados de um servidor local para outro.
Essa abordagem é adequada para migrações e aplicativos que exigem acesso a recursos do sistema operacional que podem não ser compatíveis no nível de PaaS. As máquinas virtuais do SQL são prontas para o lift-and-shift de aplicativos existentes que exigem migração rápida para a nuvem com alterações mínimas. Você também pode usar o SQL Server em VMs do Azure para estender aplicativos locais existentes para a nuvem em implantações híbridas.
Observação
Uma implantação híbrida é um sistema em que parte da operação é executada localmente e outra parte na nuvem. Seu banco de dados pode ser parte de um sistema maior executado no local, embora os elementos do banco de dados possam ser hospedados na nuvem.
É possível usar o SQL Server em uma máquina virtual para desenvolver e testar aplicativos SQL Server tradicionais. Com uma máquina virtual, você tem os direitos administrativos completos sobre o DBMS e o sistema operacional. É uma opção perfeita quando uma organização já tem recursos de TI disponíveis para manter as máquinas virtuais.
Esses recursos permitem:
- Criar cenários rápidos de desenvolvimento e teste quando você não quiser comprar hardware do SQL Server local que não seja de produção.
- Preparar o lift-and-shift para os aplicativos existentes que exigem migração rápida para a nuvem com poucas ou nenhuma alteração.
- Escalar verticalmente a plataforma em que o SQL Server é executado alocando mais memória, capacidade de CPU e espaço em disco à máquina virtual. É possível redimensionar rapidamente uma máquina virtual do Azure sem a necessidade de reinstalar o software que está sendo executado nela.
Benefícios empresariais
Executar o SQL Server em máquinas virtuais permite atender a necessidades empresariais únicas e diversificadas por meio de uma combinação de implantações locais e hospedadas na nuvem usando o mesmo conjunto de produtos para servidores, ferramentas de desenvolvimento e conhecimentos nesses ambientes.
Nem sempre é fácil para as empresas mudarem do DBMS para um serviço totalmente gerenciado. Pode haver requisitos específicos que devem ser atendidos para migrar para um serviço gerenciado que exijam a realização de alterações no banco de dados e nos aplicativos que o usam. Por esse motivo, o uso de máquinas virtuais pode ser uma solução, mas não elimina a necessidade de administrar o DBMS com cuidado, da mesma forma como você faria localmente.
Instância Gerenciada do Azure SQL
A instância gerenciada de SQL do Azure executa efetivamente uma instância totalmente controlável do SQL Server na nuvem. Você pode instalar vários bancos de dados na mesma instância. Você tem controle total sobre essa instância, assim como em um servidor local. A Instância Gerenciada de SQL automatiza backups, aplicação de patch de software, monitoramento de banco de dados e outras tarefas gerais, mas você tem controle total sobre a segurança e a alocação de recursos para os seus bancos de dados. Veja informações detalhadas em O que é a Instância Gerenciada de SQL do Azure?.
As instâncias gerenciadas dependem de outros serviços do Azure, como o Armazenamento do Azure para backups, os Hubs de Eventos do Azure para telemetria, o Microsoft Entra ID para autenticação, o Azure Key Vault para TDE (Transparent Data Encryption) e alguns serviços da plataforma Azure que fornecem recursos de segurança e compatibilidade. As instâncias gerenciadas se conectam com esses serviços.
Todas as comunicações são criptografadas e assinadas usando certificados. Para verificar a confiabilidade das partes que se comunicam, as instâncias gerenciadas verificam constantemente esses certificados por meio de listas de certificados revogados. Se os certificados forem revogados, a instância gerenciada fechará as conexões para proteger os dados.
Casos de uso
Considere a Instância Gerenciada de SQL do Azure se você quiser fazer o lift-and-shift de uma instância do SQL Server local e todos os seus bancos de dados para a nuvem, sem incorrer na sobrecarga de gerenciamento da execução do SQL Server em uma máquina virtual.
A Instância Gerenciada de SQL do Azure fornece recursos que não estão disponíveis no Banco de Dados SQL do Azure (discutidos abaixo). Se o sistema usar recursos como servidores vinculados, Service Broker (um sistema de processamento de mensagens que pode ser usado para distribuir o trabalho entre servidores) ou Database Mail (que permite ao seu banco de dados enviar mensagens de email para os usuários), use a instância gerenciada. Para verificar a compatibilidade com um sistema local existente, instale o AMD (Assistente de Migração de Dados). Essa ferramenta analisa seus bancos de dados no SQL Server e relata problemas que possam bloquear a migração para uma instância gerenciada.
Benefícios empresariais
A Instância Gerenciada de SQL do Azure permite que um administrador do sistema gaste menos tempo em tarefas administrativas, pois o serviço executa ou simplifica bastante essas tarefas. As tarefas automatizadas incluem instalação e aplicação de patches do software do sistema operacional e do sistema de gerenciamento de banco de dados, redimensionamento e configuração de instâncias dinâmicas, backups, replicação de banco de dados (incluindo banco de dados do sistema), configuração de alta disponibilidade e de fluxo de dados de monitoramento de desempenho e integridade.
A Instância Gerenciada de SQL do Azure tem quase 100% de compatibilidade com a Edição do SQL Server Enterprise em execução local.
A Instância Gerenciada de SQL do Azure dá suporte a logons do Mecanismo de banco de dados do SQL Server e logons integrados ao Microsoft Entra ID. Os logons do Mecanismo de banco de dados do SQL Server incluem um nome de usuário e uma senha. Você deve inserir suas credenciais sempre que se conectar ao servidor. Os logons do Microsoft Entra usam as credenciais associadas à sua entrada atual do computador e você não precisa fornecê-las sempre que se conectar ao servidor.
Banco de Dados SQL do Azure
O Banco de Dados SQL do Azure é uma oferta de PaaS da Microsoft. Você cria um servidor de banco de dados na nuvem e implanta seus bancos de dados nele.
Observação
O Servidor do Banco de Dados SQL é um constructo lógico que atua como um ponto administrativo central para um banco de dados individual ou em pool, logons, regras de firewall, regras de auditoria, políticas de detecção de ameaças e grupos de failover.
O Banco de Dados SQL do Azure está disponível como um Banco de Dados Individual ou um Pool Elástico.
Banco de Dados Individual
Essa opção permite configurar e executar rapidamente um banco de dados individual do SQL Server. Você cria e executa um servidor de banco de dados na nuvem e acessa o banco de dados por meio desse servidor. A Microsoft gerencia o servidor, de modo que tudo o que você precisa fazer é configurar o banco de dados, criar suas tabelas e preenchê-las com os seus dados. Você pode escalar o banco de dados se precisar de mais espaço de armazenamento, memória ou capacidade de processamento. Por padrão, os recursos são pré-alocados e você é cobrado por hora pelos recursos solicitados. Também é possível especificar uma configuração sem servidor. Nessa configuração, a Microsoft cria um servidor próprio, que pode ser compartilhado por bancos de dados pertencentes a outros assinantes do Azure. A Microsoft garante a privacidade do seu banco de dados. O banco de dados é dimensionado automaticamente e os recursos são alocados ou desalocados conforme necessário.
Pool Elástico
Essa opção é semelhante ao Banco de Dados Individual. No entanto, por padrão, vários bancos de dados podem compartilhar os mesmos recursos, como memória, espaço de armazenamento de dados e capacidade de processamento, por meio de multilocação. Os recursos são chamados de pool. Você cria o pool e somente seus bancos de dados podem usá-lo. Esse modelo será útil se você tiver bancos de dados com requisitos de recursos que variam ao longo do tempo. Além disso, ajuda a economizar. Por exemplo, seu banco de dados de folha de pagamento pode exigir muita capacidade de CPU no final de cada mês quando você processa a folha de pagamento. Mas em outras ocasiões, o banco de dados pode se tornar muito menos ativo. Você pode ter outro banco de dados usado para executar relatórios. Esse banco de dados pode se tornar ativo por vários dias no meio do mês, à medida que os relatórios de gerenciamento são gerados, e ter uma carga mais leve em outras ocasiões. O Pool Elástico permite usar os recursos disponíveis no pool e liberá-los após a conclusão do processamento.
Casos de uso
O Banco de Dados SQL do Azure oferece a melhor opção de baixo custo com administração mínima. Não é totalmente compatível com as instalações locais do SQL Server. Geralmente, é usada em novos projetos de nuvem em que o design do aplicativo pode acomodar as alterações necessárias em seus aplicativos.
Observação
Use o Assistente de Migração de Dados para detectar problemas de compatibilidade com seus bancos de dados que podem afetar a funcionalidade do banco de dados no Banco de Dados SQL do Azure. Para obter mais informações, confira Visão geral do Assistente de Migração de Dados.
O Banco de Dados SQL do Azure é muito usado para:
- Aplicativos de nuvem modernos que precisam usar os recursos estáveis de SQL Server mais recentes.
- Aplicativos que exigem alta disponibilidade.
- Sistemas com uma carga variável que precisam do servidor de banco de dados para escalar e reduzir verticalmente de modo rápido.
Benefícios empresariais
O Banco de Dados SQL do Azure atualiza automaticamente e aplica patches no software do SQL Server para garantir que você sempre esteja executando a versão mais recente e mais segura do serviço.
Os recursos de escalabilidade do Banco de Dados SQL do Azure garantem que você possa aumentar os recursos disponíveis para armazenar e processar dados sem precisar executar uma atualização manual cara.
O serviço fornece garantias de alta disponibilidade para garantir que seus bancos de dados estejam disponíveis em pelo menos 99,995% do tempo. O Banco de Dados SQL do Azure é compatível com a restauração pontual, o que permite recuperar um banco de dados para o estado em que estava em qualquer ponto no passado. É possível replicar bancos de dados para regiões diferentes para fornecer mais resiliência e recuperação de desastre.
A proteção avançada contra ameaças fornece recursos de segurança avançados, como avaliações de vulnerabilidade, para ajudar a detectar e corrigir possíveis problemas de segurança com seus bancos de dados. A proteção contra ameaças detecta atividades anômalas que indicam tentativas incomuns e potencialmente prejudiciais de acessar ou explorar seu banco de dados. Monitora continuamente o banco de dados com relação a atividades suspeitas e fornece alertas de segurança imediatos sobre possíveis vulnerabilidades, ataques de injeção de SQL e padrões de acesso anormal do banco de dados. Os alertas da proteção contra ameaças fornecem detalhes de atividades suspeitas e recomendam ações para investigar e atenuar a ameaça.
A auditoria rastreia eventos de banco de dados e os grava em um log de auditoria na conta de armazenamento do Azure. A auditoria pode ajudar você a manter uma conformidade regulatória, a entender a atividade do banco de dados e a obter informações sobre discrepâncias e anomalias que poderiam indicar preocupações de negócios ou suspeitas de violações de segurança.
O Banco de Dados SQL do Microsoft Azure ajuda a proteger seus dados fornecendo criptografia que protege os dados armazenados no banco de dados (em repouso) e enquanto estão sendo transferidos pela rede (em movimento).