Descrivere SQL Edge
Molte organizzazioni effettuano investimenti sostanziali nell'infrastruttura IoT. Un'architettura della soluzione IoT tipica include dispositivi IoT responsabili della lettura dei sensori ambientali per generare i dati dei clienti. In genere, questi dati vengono elaborati in sede tramite i dispositivi perimetrali. Un dispositivo IoT Edge, inoltre, può eseguire contenitori compatibili con Docker contenenti logica di business personalizzata o versioni leggere dei servizi cloud, ad esempio Analisi di flusso di Azure, Azure Machine Learning, Funzioni di Azure, Azure SQL e altro ancora. Il vantaggio di IoT Edge consiste nel fatto che l'elaborazione avviene nella rete locale determinando un ciclo di feedback più rapido qualora fosse necessario intraprendere qualsiasi azione, riducendo al minimo i costi di elaborazione e di larghezza di banda del cloud.
SQL Edge di Azure è un motore di database relazionale ottimizzato progettato appositamente per i carichi di lavoro IoT. Fornisce funzionalità per lo streaming, l'elaborazione e l'analisi di dati relazionali e non relazionali, come JSON, grafici e dati di serie temporale. SQL Edge di Azure si basa sulla versione più recente del motore di database di SQL Server, lo stesso che funge da base di SQL Server e Azure SQL. SQL Edge di Azure offre funzionalità di programmazione T-SQL, prestazioni leader del settore, sicurezza e elaborazione di query in Edge.
Vantaggi
Sintassi e strumenti T-SQL familiari
Gli sviluppatori e gli amministratori SQL possono continuare a sfruttare la sintassi e gli strumenti T-SQL familiari poiché SQL Edge di Azure si basa sul motore di database di SQL Server. Gli strumenti disponibili includono il portale di Azure, SQL Server Management Studio, Azure Data Studio, Visual Studio Code e SQL Server Data Tools in Visual Studio.
Portabilità
SQL Edge di Azure è una versione in contenitori del motore di database di SQL Server ottimizzata per IoT. SQL Edge di Azure è distribuibile in diversi server basati su Windows e Linux in grado di eseguire il runtime IoT Edge, da potenti server completi a dispositivi di dimensioni minori basati su ARM.
Supporto per più stati di connessione e sincronizzazione dati
In IoT la connettività Internet non è sempre possibile o affidabile. Di conseguenza, i moduli IoT Edge devono supportare tutti gli stati di connettività. SQL Edge di Azure supporta scenari connessi, disconnessi e ibridi semiconnessi. La sincronizzazione incrementale dei dati è possibile con il servizio di sincronizzazione dati SQL di Azure e con la configurazione dei gruppi di sincronizzazione per sincronizzare le tabelle scelte in modo bidirezionale tra più database in istanze di Azure SQL e SQL Server.
Il diagramma seguente descrive il processo di sincronizzazione. Il processo di sincronizzazione usa un agente in SQL Edge di Azure per sincronizzare i dati con il database hub. Dal punto di vista dell'hub, il processo di sincronizzazione è basato su un'app guidata dai dettagli disponibili nel database di sincronizzazione, in cui vengono archiviati i metadati e i log di sincronizzazione.
Flusso di dati e apprendimento automatico predefiniti
SQL Edge di Azure offre il supporto predefinito per il flusso di dati da e verso più input e output. Questa funzionalità usa la stessa tecnologia che supporta Analisi di flusso di Azure e consente l'analisi dei dati di serie temporale in ingresso usando funzioni di rilevamento anomalie, intervallo temporale, aggregazione e filtro. SQL Edge di Azure include anche funzioni T-SQL che supportano l'esecuzione di query sui dati di serie temporale. SQL Edge di Azure supporta anche l'inferenza di apprendimento automatico e l'istruzione PREDICT
.
Considerazioni relative alla sicurezza
La sicurezza in SQL Edge di Azure offre funzioni di crittografia dei dati, classificazione e controlli di accesso dal motore di database di SQL Server. SQL Edge di Azure offre inoltre sicurezza a livello di riga, maschera dati dinamica e Transparent Data Encryption (TDE) come vantaggio aggiuntivo per la sicurezza. È anche utile crittografare tutti i file di backup creati usando un certificato oppure una chiave asimmetrica.
In relazione al trasporto di rete, SQL Edge di Azure usa il protocollo TLS (Transport Layer Security) e i certificati per crittografare tutte le comunicazioni. Microsoft Defender per IoT offre infine una soluzione di sicurezza centralizzata e unificata per individuare e identificare dispositivi IoT, vulnerabilità e minacce. Come per qualsiasi soluzione correlata ai dati, è anche consigliabile verificare che agli utenti del database venga concesso il privilegio minimo sugli oggetti di database.
Distribuzione di SQL Edge di Azure da Azure Marketplace
SQL Edge di Azure è disponibile in Azure Marketplace con due piani, Azure SQL Edge Developer (solo per lo sviluppo, limitato a 4 core e 32 GB di memoria) e Azure SQL Edge (per la produzione, limitato a 8 core e 64 GB di memoria).
Come prerequisito per distribuire SQL Edge di Azure, è necessario disporre di un hub IoT di cui sia stato effettuato il provisioning con almeno un dispositivo IoT Edge. In questo esempio è stato eseguito il provisioning preliminare di un hub IoT denominato org-iot-hub e di un dispositivo IoT Edge basato su Linux denominato iot-edge-device-1.
Individuare il modulo SQL Edge di Azure in Azure Marketplace e selezionare il pulsante Scarica adesso.
Nel modulo modale selezionare lo SKU del piano software desiderato. In questo esempio viene scelto Azure SQL Edge Developer. Inserire quindi eventuali altre informazioni sul profilo richieste dal modulo e selezionare Continua.
Nella schermata Dispositivi di destinazione per il modulo IoT Edge immettere manualmente il nome del dispositivo IoT Edge oppure usare la funzionalità Trova dispositivo per individuare il dispositivo perimetrale nell'hub IoT selezionato. In questo esempio il nome del dispositivo perimetrale è iot-device-edge-1. Selezionare il pulsante Crea.
Nel riquadro Imposta moduli nel dispositivo scegliere l'elemento AzureSQLEdge in Moduli IoT Edge.
Nel riquadro Aggiorna modulo IoT Edge selezionare la scheda Variabili di ambiente. Sostituire quindi la password dell'account amministratore di SQL Edge impostando il valore per la variabile MSSQL_SA_PASSWORD. Facoltativamente, aggiungere le opzioni di configurazione nella scheda Opzioni di creazione contenitore. Al termine, selezionare il pulsante Aggiorna.
Tornare al riquadro Imposta moduli nel dispositivo, configurare facoltativamente il routing dei messaggi per il modulo sotto la scheda Route. Al termine, selezionare Rivedi e crea e Crea ancora una volta nella schermata di convalida.
Verrà visualizzata la schermata del dispositivo IoT Edge. Attendere alcuni istanti per visualizzare nell'elenco dei moduli segnalati del dispositivo AzureSQLEdge in stato di esecuzione. Se l'avvio del modulo non è completo, viene indicato temporaneamente uno stato di errore. In tal caso, attendere alcuni minuti e aggiornare.
Usare il metodo di connessione desiderato e iniziare a usare SQL Edge di Azure.