Descrever os serviços e recursos do SQL do Azure
Azure SQL é um termo coletivo para uma família de serviços de banco de dados baseados no Microsoft SQL Server no Azure. Os serviços SQL específicos do Azure incluem:
- SQL Server em Máquinas Virtuais (VMs) 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 infraestrutura como serviço (IaaS) que virtualiza a infraestrutura de hardware para computação, armazenamento e rede no Azure; tornando-o uma ótima opção para a migração "lift and shift" de instalações existentes do SQL Server no local para a nuvem.
- Instância Gerenciada SQL do Azure - Uma opção de plataforma como serviço (PaaS) que fornece quase 100% de compatibilidade com instâncias locais do SQL Server enquanto abstrai 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 do servidor de banco de dados.
- Banco de Dados SQL do Azure - Um serviço de banco de dados PaaS totalmente gerenciado e altamente escalá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 quando você precisa criar um novo aplicativo na nuvem.
- Azure SQL Edge - Um mecanismo SQL otimizado para cenários de Internet das Coisas (IoT) que precisam trabalhar com streaming de dados de séries cronológicas.
Nota
O Azure SQL Edge está incluído nesta lista para integridade. Vamos nos concentrar nas outras opções para cenários de banco de dados relacional mais gerais neste módulo.
Comparar os serviços SQL do Azure
-- | SQL Server nas VMs do Azure | Instância Gerida do Azure SQL | Base de Dados SQL do Azure |
---|---|---|---|
Tipo de serviço de nuvem | IaaS | PaaS | PaaS |
Compatibilidade com o SQL Server | Totalmente compatível com instalações físicas e virtualizadas locais. Aplicativos e bancos de dados podem ser facilmente migrados sem alterações. | Quase 100% de compatibilidade com o SQL Server. A maioria dos bancos de dados locais pode ser migrada com alterações mínimas de 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 dependentes de um aplicativo local podem não estar disponíveis. |
Arquitetura | As instâncias do SQL Server são instaladas em uma máquina virtual. Cada instância pode suportar vários bancos de dados. | Cada instância gerenciada pode oferecer suporte a vários bancos de dados. Além disso, os pools de instâncias podem ser usados para compartilhar recursos de forma eficiente entre instâncias menores. | Você pode provisionar um único banco de dados em um servidor dedicado gerenciado (lógico) ou pode usar um pool elástico para compartilhar recursos entre vários bancos de dados e aproveitar a escalabilidade sob demanda. |
Disponibilidade | 99,99% | 99,99% | 99.995% |
Gestão | Você deve gerenciar todos os aspetos do servidor, incluindo atualizações do sistema operacional e do SQL Server, configuração, backups e outras tarefas de manutenção. | Atualizações, backups e recuperação totalmente automatizados. | Atualizações, backups e recuperação totalmente automatizados. |
Casos de utilização | Use essa opção quando precisar migrar ou estender uma solução SQL Server local e manter o controle total sobre todos os aspetos da configuração do servidor e do banco de dados. | Use essa opção para a maioria dos cenários de migração para a nuvem, especialmente quando você precisar de alterações mínimas em aplicativos existentes. | Use essa opção para novas soluções de nuvem ou para migrar aplicativos que tenham dependências mínimas no nível da instância. |
SQL Server nas Máquinas Virtuais do Azure
O SQL Server nas Máquinas Virtuais permite-lhe utilizar versões completas do SQL Server na Cloud sem precisar de gerir qualquer hardware no local. Este é um exemplo da abordagem IaaS.
O SQL Server em execução numa máquina virtual do Azure replica efetivamente a base de dados em execução no hardware no local real. A migração do sistema em execução no local para uma máquina virtual do Azure não é diferente de deslocar as bases de dados de um servidor no local para outro.
Esta abordagem é adequada para migrações e aplicações que exigem acesso às funcionalidades do sistema operativo que podem não ser suportadas ao nível da PaaS. As máquinas virtuais SQL estão preparadas para a migração lift-and-shift de aplicações existentes que exigem uma migração rápida para a cloud 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.
Nota
Uma implementação híbrida é um sistema em que parte da operação é executada no local e parte na cloud. A base de dados pode fazer parte de um sistema maior que é executado no local, embora os elementos da base de dados possam ser alojados na cloud.
Pode utilizar o SQL Server numa máquina virtual para desenvolver e testar aplicações tradicionais do SQL Server. Com uma máquina virtual, tem os direitos administrativos completos sobre o DBMS e o sistema operativo. É uma opção perfeita quando uma organização já tem recursos de TI disponíveis para manter as máquinas virtuais.
Estas capacidades permitem-lhe:
- Crie cenários de desenvolvimento e teste rápidos quando não quiser comprar hardware do SQL Server local que não seja de produção.
- Tornar-se compatível com a migração lift-and-shift para aplicações existentes que exigem uma migração rápida para a cloud com alterações mínimas ou inexistentes.
- Aumentar verticalmente a plataforma na qual o SQL Server está em execução, ao alocar mais memória, potência de CPU e espaço em disco à máquina virtual. Pode redimensionar rapidamente uma máquina virtual do Azure sem a necessidade de reinstalar o software que está a ser executado nesta.
Benefícios comerciais
A execução do SQL Server em máquinas virtuais permite-lhe cumprir as necessidades de negócios exclusivas e diversificadas através de uma combinação de implementações no local e alojadas na cloud, enquanto utiliza o mesmo conjunto de produtos do servidor, as ferramentas de desenvolvimento e a experiência nesses ambientes.
Nem sempre é fácil para as empresas mudarem os DBMS para um serviço totalmente gerido. Poderão existir requisitos específicos que deverão ser cumpridos para permitir a migração para um serviço gerido, que exige a realização de alterações na base de dados e nas aplicações que o utilizam. Por esse motivo, o uso de máquinas virtuais pode oferecer uma solução, mas usá-las não elimina a necessidade de administrar seu DBMS com o mesmo cuidado que faria no local.
Instância Gerida do Azure SQL
A instância SQL Managed do Azure executa efetivamente uma instância totalmente controlável do SQL Server na nuvem. Pode instalar várias bases de dados na mesma instância. Tem controlo total sobre essa instância, assim como faria para um servidor no local. A Instância Gerenciada SQL automatiza backups, patches 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 seus bancos de dados. Você pode encontrar informações detalhadas em O que é a Instância Gerenciada SQL do Azure?.
As instâncias gerenciadas dependem de outros serviços do Azure, como o Armazenamento do Azure para backups, Hubs de Eventos do Azure para telemetria, ID do Microsoft Entra para autenticação, Cofre da Chave do Azure para Criptografia de Dados Transparente (TDE) e alguns serviços da plataforma Azure que fornecem recursos de segurança e suporte. As instâncias geridas fazem ligações a esses serviços.
Todas as comunicações são encriptadas e assinadas com certificados. Para verificar a fiabilidade dos intervenientes na comunicação, as instâncias geridas verificam constantemente estes certificados através de listas de revogação de certificados. Se os certificados forem revogados, a instância gerida fechará as ligações para proteger os dados.
Casos de utilização
Considere a Instância Gerenciada SQL do Azure se quiser elevar e deslocar 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 SQL do Azure fornece recursos não disponíveis no Banco de Dados SQL do Azure (discutido abaixo). Se o sistema utilizar funcionalidades como servidores ligados, Service Broker (um sistema de processamento de mensagens que pode ser utilizado para distribuir o trabalho entre servidores) ou Correio de Base de Dados (que permite que a base de dados envie mensagens de e-mail para os utilizadores), deverá utilizar a instância gerida. Para verificar a compatibilidade com um sistema no local existente, pode instalar o Assistente de Migração de Dados (DMA). Esta ferramenta analisa as bases de Dados no SQL Server e comunica quaisquer problemas que possam bloquear a migração para uma instância gerida.
Benefícios comerciais
A Instância Gerenciada SQL do Azure permite que um administrador de sistema gaste menos tempo em tarefas administrativas porque o serviço as executa para você ou simplifica muito essas tarefas. As tarefas automatizadas incluem a instalação e aplicação de patches do software do sistema operativo e do gestor de bases de dados, o redimensionamento e a configuração de instâncias dinâmicas, a realização de cópias de segurança, a replicação da base de dados (incluindo a base de dados do sistema), a configuração de elevada disponibilidade e a configuração dos fluxos de dados de monitorização de desempenho e bom funcionamento.
A Instância Gerenciada SQL do Azure tem quase 100% de compatibilidade com o SQL Server Enterprise Edition, executado localmente.
A Instância Gerenciada SQL do Azure dá suporte a logons e logons do mecanismo de Banco de Dados do SQL Server integrados à ID do Microsoft Entra. Os logons do mecanismo de banco de dados do SQL Server incluem um nome de usuário e uma senha. Deve introduzir as credenciais sempre que se ligar ao servidor. Os logins do Microsoft Entra usam as credenciais associadas à entrada atual do computador e você não precisa fornecê-las sempre que se conectar ao servidor.
Base de Dados SQL do Azure
A Base de Dados SQL do Azure é uma oferta PaaS da Microsoft. O utilizador cria um servidor de bases de dados gerido na cloud e, em seguida, implementa as bases de dados neste servidor.
Nota
Um servidor da Base de Dados SQL é uma construção lógica que funciona como um ponto administrativo central para várias bases de dados de conjuntos ou individuais, inícios de sessão, regras da firewall, regras de auditoria, políticas de deteção de ameaças e grupos de ativação pós-falha.
O Banco de Dados SQL do Azure está disponível como um Banco de Dados Único ou um Pool Elástico.
Base de Dados Individual
Esta opção permite-lhe configurar e executar rapidamente uma base de dados do SQL Server individual. O utilizador cria e executa um servidor de bases de dados na cloud e acede à base de dados através deste servidor. A Microsoft gere o servidor, por isso, tudo o que precisa de fazer é configurar a base de dados, criar as tabelas e preenchê-las com os dados. Você pode dimensionar o banco de dados se precisar de mais espaço de armazenamento, memória ou poder de processamento. Por padrão, os recursos são pré-alocados e você é cobrado por hora pelos recursos solicitados. Também pode especificar uma configuração sem servidor. Nessa configuração, a Microsoft cria seu próprio servidor, que pode ser compartilhado por bancos de dados pertencentes a outros assinantes do Azure. A Microsoft garante a privacidade da base de dados. A base de dados é dimensionada automaticamente e os recursos são alocados ou desalocados, conforme necessário.
Conjunto Elástico
Esta opção é semelhante à Base de Dados Individual, só que, por predefinição, várias bases de dados podem partilhar os mesmos recursos, como memória, espaço de armazenamento de dados e capacidade de processamento através de arquitetura multi-inquilino. Os recursos são referidos como um conjunto. O utilizador cria o conjunto e apenas as bases de dados o podem utilizar. Este modelo será útil se tiver bases de dados com requisitos de recursos que variam ao longo do tempo e podem ajudá-lo a reduzir os custos. Por exemplo, a base de dados das folhas de pagamentos pode exigir muita potência de CPU no final de cada mês à medida que gere o processamento das folhas de pagamentos, mas, noutras ocasiões, a base de dados pode tornar-se muito menos ativa. Pode ter outra base de dados que é utilizada para executar relatórios. Esta base de dados pode tornar-se ativa durante vários dias no meio do mês, à medida que os relatórios de gestão são gerados, mas com uma carga mais leve noutras ocasiões. O Conjunto Elástico permite-lhe utilizar os recursos disponíveis no conjunto e, em seguida, libertá-los após a conclusão do processamento.
Casos de utilização
A Base de Dados SQL do Azure oferece a melhor opção de baixo custo com uma administração mínima. Ele não é totalmente compatível com instalações locais do SQL Server. É frequentemente usado em novos projetos de nuvem onde o design do aplicativo pode acomodar quaisquer alterações necessárias em seus aplicativos.
Nota
Pode utilizar o Assistente de Migração de Dados para detetar problemas de compatibilidade com as bases de dados que podem afetar a funcionalidade da base de dados na Base de Dados SQL do Azure. Para obter mais informações, veja Overview of Data Migration Assistant (Descrição geral do Assistente de Migração de Dados).
A Base de Dados SQL do Azure é geralmente utilizada para:
- Aplicações na cloud modernas que precisam das funcionalidades mais recentes e estáveis do SQL Server.
- Aplicações que precisam de elevada disponibilidade.
- Sistemas com uma carga variável que precisam que o servidor de banco de dados aumente e diminua a escala rapidamente.
Benefícios comerciais
O Banco de Dados SQL do Azure atualiza e corrige automaticamente o software SQL Server para garantir que você esteja sempre executando a versão mais recente e segura do serviço.
As funcionalidades de escalabilidade da Base de Dados SQL do Azure garantem que pode aumentar os recursos disponíveis para armazenar e processar dados sem precisar de executar uma atualização manual dispendiosa.
O serviço oferece garantias de alta disponibilidade, para garantir que seus bancos de dados estejam disponíveis pelo menos 99,995% do tempo. A Base de Dados SQL do Azure suporta uma recuperação para um ponto anterior no tempo, o que lhe permite recuperar uma base de dados para o estado em que estava em qualquer ponto no passado. Os bancos de dados podem ser replicados para diferentes regiões para fornecer mais resiliência e recuperação de desastres.
A proteção avançada contra ameaças proporciona recursos de segurança avançados, como avaliações de vulnerabilidade, para ajudar a detetar e corrigir possíveis problemas de segurança com as bases de dados. A proteção de ameaças também deteta atividades anómalas que indicam tentativas potencialmente perigosas e invulgares de acesso ou exploração das bases de dados. Monitoriza continuamente a sua base de dados em busca de atividades suspeitas e apresenta alertas de segurança imediatos em casos de potenciais vulnerabilidades, ataques de injeção SQL e padrões anómalos de acesso a bases de dados. Os alertas de deteção de ameaças proporcionam detalhes sobre a atividade suspeita e recomendam ações de investigação e mitigação da ameaça.
A auditoria controla os eventos da base de dados e escreve-os num registo de auditoria na conta de armazenamento do Azure. A auditoria pode ajudar a manter a conformidade regulatória, a compreender as atividades da base de dados e a obter informações relativas a discrepâncias e anomalias que podem indicar preocupações comerciais ou suspeitas de violações de segurança.
O Banco de dados SQL 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).