Descrever o SQL Edge

Concluído

Muitas organizações têm investimentos substanciais em infraestrutura de IoT. Uma arquitetura típica de solução de IoT inclui dispositivos IoT responsáveis pela leitura de sensores ambientais para gerar dados de clientes. Geralmente, esses dados são processados no local usando dispositivos Edge. Além disso, um dispositivo IoT Edge pode executar contêineres compatíveis com Docker contendo lógica de negócios personalizada ou versões leves de serviços de nuvem, como Azure Stream Analytics, Azure Machine Learning, Azure Functions, Azure SQL e muito mais. O benefício do IoT Edge é que o processamento acontece na rede local, resultando em um loop de feedback mais rápido caso alguma ação precise ser tomada, ao mesmo tempo em que minimiza os custos de processamento em nuvem e largura de banda.

An architecture diagram displays IoT devices providing customer data to an IoT Edge device running various modules then forwarding data to IoT Hub in Azure.

O Azure SQL Edge é um mecanismo de banco de dados relacional otimizado projetado propositalmente para cargas de trabalho de IoT. Ele fornece recursos para transmitir, processar e analisar dados relacionais e não relacionais, como dados JSON, gráficos e séries temporais. O Azure SQL Edge foi criado com base na versão mais recente do Mecanismo de Banco de Dados do SQL Server – o mesmo mecanismo que serve como base do SQL Server e do Azure SQL. O Azure SQL Edge traz programação T-SQL, desempenho líder do setor, segurança e recursos de processamento de consultas para o Edge.

Benefícios

Sintaxe e ferramentas T-SQL familiares

Os desenvolvedores e administradores do SQL podem continuar a aproveitar a sintaxe e as ferramentas familiares do T-SQL, já que o Azure SQL Edge é baseado no Mecanismo de Banco de Dados do SQL Server. As ferramentas disponíveis incluem o portal do Azure, o SQL Server Management Studio, o Azure Data Studio, o Visual Studio Code e o SQL Server Data Tools no Visual Studio.

Portabilidade

O Azure SQL Edge é uma versão em contêiner do Mecanismo de Banco de Dados do SQL Server otimizada para IoT. O Azure SQL Edge pode ser implantado em vários servidores baseados em Windows e Linux capazes de executar o tempo de execução do IoT Edge, desde poderosos servidores completos até dispositivos menores baseados em ARM.

Suporte para vários estados de conexão e sincronização de dados

Na IoT, a conectividade com a Internet nem sempre é possível ou confiável. Portanto, os módulos IoT Edge precisam suportar todos os estados de conectividade. O Azure SQL Edge dá suporte a cenários semiconectados conectados, desconectados e híbridos. A sincronização incremental de dados é possível com o serviço de Sincronização de Dados SQL do Azure e a configuração de grupos de sincronização para sincronizar as tabelas escolhidas bidirecionalmente em vários bancos de dados em instâncias do SQL e do SQL Server do Azure.

O diagrama abaixo mostra o processo de sincronização. O processo de sincronização usa um agente de sincronização no Azure SQL Edge para sincronizar dados com o banco de dados do Hub. Do ponto de vista do Hub, o processo de sincronização é conduzido por um aplicativo Sync guiado por detalhes disponíveis no banco de dados Sync, onde os metadados e logs de sincronização são armazenados.

A diagram depicting the Azure SQL Data Sync process between an Azure SQL Edge database and an Azure SQL database.

Streaming de dados e aprendizagem automática incorporados

O Azure SQL Edge tem suporte interno para streaming de dados de e para várias entradas e saídas. Essa funcionalidade empresta a mesma tecnologia que alimenta o Azure Stream Analytics e permite a introspeção de dados de séries cronológicas de entrada usando deteção de anomalias, janela de tempo, agregação e filtragem. O Azure SQL Edge também tem funções T-SQL que dão suporte à consulta de dados de séries temporais. Além disso, o Azure SQL Edge dá suporte à inferência de aprendizado de máquina e à PREDICT instrução.

Considerações de segurança

A segurança no SQL Edge do Azure traz criptografia de dados, classificação e controles de acesso do Mecanismo de Banco de Dados do SQL Server. Além disso, o Azure SQL Edge fornece segurança em nível de linha, mascaramento dinâmico de dados e criptografia de dados transparente (TDE) como um benefício de segurança extra. Também é benéfico criptografar todos os arquivos de backup criados usando um certificado ou chave assimétrica.

Quanto ao transporte de rede, o Azure SQL Edge utiliza a segurança da camada de transporte (TLS) e certificados para criptografar todas as comunicações. Por fim, o Microsoft Defender for IoT fornece uma solução de segurança centralizada e unificada para descobrir e identificar dispositivos, vulnerabilidades e ameaças da IoT. Como em qualquer solução relacionada a dados, também é prudente garantir que os usuários do banco de dados recebam o menor privilégio em objetos de banco de dados.

Implantando o Azure SQL Edge a partir do Azure Marketplace

O Azure SQL Edge está disponível no Azure Marketplace com dois planos, Azure SQL Edge Developer (apenas para desenvolvimento, limitado a 4 núcleos e 32 GB de memória) e Azure SQL Edge (para produção, limitado a 8 núcleos e 64 GB de memória).

Como pré-requisito para implantar o Azure SQL Edge, você precisa ter um Hub IoT provisionado com pelo menos um dispositivo IoT Edge. Neste exemplo, um Hub IoT chamado org-iot-hub e um dispositivo IoT Edge baseado em Linux chamado iot-edge-device-1 foram pré-provisionados.

  1. Localize o módulo Azure SQL Edge no Azure Marketplace e selecione o botão Obter agora.

    The Azure SQL Edge module overview screen displays with the Get It Now button highlighted.

  2. No formulário modal, selecione o plano de software desejado SKU. Neste exemplo, o Azure SQL Edge Developer é escolhido. Em seguida, preencha qualquer outra informação de perfil exigida pelo formulário e selecione Continuar.

    A modal form displays prompting for software plan and profile information. The Continue button is highlighted.

  3. Na tela Dispositivos de Destino para o Módulo de Borda IoT, insira o valor Nome do Dispositivo do IoT Edge manualmente ou use a funcionalidade Localizar Dispositivo para localizar o dispositivo de Borda do Hub IoT selecionado. Neste exemplo, o nome do dispositivo Edge é iot-device-edge-1. Em seguida, selecione o botão Criar .

    A form displays prompting for IoT Edge Device Name. The Create button is highlighted.

  4. Na folha Definir módulos no dispositivo, escolha o item AzureSQLEdge em Módulos de Borda IoT.

    The IoT Edge Modules list displays with the AzureSQLEdge module highlighted.

  5. Na folha Atualizar Módulo IoT Edge, selecione a guia Variáveis de Ambiente. Em seguida, substitua a senha da conta de administrador do SQL Edge definindo o valor para a variável MSSQL_SA_PASSWORD. Opcionalmente, adicione opções de configuração na guia Opções de criação de contêiner. Depois de concluído, selecione o botão Atualizar.

    The IoT Edge Module Environment Variables tab is selected along with the value for MSSQL_SA_PASSWORD. The Update button is highlighted.

  6. Voltando à folha Definir módulos no dispositivo , opcionalmente, configure o roteamento de mensagens para o módulo abaixo da guia Rotas . Depois de concluir, selecione Rever + criar e Criar mais uma vez na tela de validação.

    The Set modules on device blade displays with the Review + create button highlighted.

  7. A tela do dispositivo IoT Edge será exibida. Aguarde alguns instantes e a lista de módulos relatados do dispositivo agora exibe o AzureSQLEdge em um estado de execução. Se a inicialização do módulo não estiver concluída, isso indicará temporariamente um estado de erro – aguarde alguns minutos e atualize.

    The IoT Edge device screen displays with the AzureSQLEdge module running. The Refresh button is highlighted on the toolbar menu.

  8. Use o método de conexão desejado e comece a usar o Azure SQL Edge!