Condividi tramite


Procedure consigliate per l'architettura per il database SQL di Azure

database SQL di Azure è un motore di database PaaS (Platform as a Service) completamente gestito che gestisce la maggior parte delle funzioni di gestione del database senza coinvolgimento dell'utente. Le funzioni di gestione includono aggiornamenti, patch, backup e monitoraggio.

Il tipo di risorsa database singolo crea un database nel database SQL di Azure con il proprio set di risorse e viene gestito tramite un server logico . È possibile scegliere tra il modello di acquisto basato su DTU o modello di acquisto basato su vCore. È possibile creare più database in un singolo pool di risorse, con pool elastici .

Le sezioni seguenti includono un elenco di controllo di progettazione e le opzioni di progettazione consigliate specifiche per la sicurezza del database SQL di Azure. Le linee guida si basano sui cinque pilastri dell'eccellenza architetturale:

  • Affidabilità
  • Sicurezza
  • Ottimizzazione dei costi
  • Eccellenza operativa
  • Efficienza delle prestazioni

Prerequisiti

  • Comprendere i pilastri di Well-Architected Framework può contribuire a produrre un'architettura cloud di alta qualità, stabile ed efficiente. Consultare la pagina di panoramica del Framework Azure Well-Architected per esaminare i cinque pilastri dell'eccellenza architettonica.

  • Esaminare i concetti di base di del database SQL di Azure e Novità del database SQL di Azure?.

Database SQL di Azure e affidabilità

database SQL di Azure è un motore di database PaaS (Platform as a Service) completamente gestito che gestisce la maggior parte delle funzioni di gestione del database senza coinvolgimento dell'utente. Le funzioni di gestione includono:

  • Aggiornamenti
  • Aggiornamenti
  • Copie di sicurezza
  • Monitoraggio

Questo servizio consente di creare un livello di archiviazione dati a disponibilità elevata e ad alte prestazioni per le applicazioni e i carichi di lavoro di Azure. Il database SQL di Azure è sempre in esecuzione nella versione stabile più recente del motore di database di SQL Server e su un sistema operativo aggiornato con un livello di disponibilità 99.99%.

Per altre informazioni su come il database SQL di Azure promuove l'affidabilità e consente all'azienda di continuare a funzionare durante le interruzioni, fare riferimento alle funzionalità di disponibilità .

Le sezioni seguenti includono considerazioni sulla progettazione, un elenco di controllo della configurazione e opzioni di configurazione consigliate specifiche per il database SQL di Azure e l'affidabilità.

Considerazioni sulla progettazione

Il database SQL di Azure include le considerazioni di progettazione seguenti:

  • Il livello Business Critical del database SQL di Azure configurato con la replica geografica ha un obiettivo di tempo di ripristino (RTO) garantito di 30 secondi per 100% di ore distribuite.

  • Utilizzare il partizionamento orizzontale per distribuire dati e processi su molti database strutturati in modo identico. Il partizionamento orizzontale offre un'alternativa agli approcci tradizionali per aumentare i costi e l'elasticità. È consigliabile usare il partizionamento orizzontale per partizionare il database. Il partizionamento orizzontale può fornire l'isolamento degli errori. Per altre informazioni, fare riferimento Scalabilità orizzontale con il database SQL di Azure.

  • I livelli Business Critical o Premium del database SQL di Azure non sono configurati per le distribuzioni con ridondanza della zona, i livelli Per utilizzo generico, Standard o Basic o Hyperscale con due o più repliche hanno una garanzia di disponibilità. Per altre informazioni sulla garanzia di disponibilità, fare riferimento contratto di servizio per il database SQL di Azure.

  • Fornisce disponibilità elevata regionale integrata e replica geografica pronta all’uso in qualsiasi area di Azure. Include l'intelligenza per supportare le funzionalità di auto-guida, ad esempio:

    • Ottimizzazione delle prestazioni
    • Monitoraggio delle minacce
    • Valutazioni delle vulnerabilità
    • Applicazione di patch e aggiornamento completamente automatizzati della codebase
  • Definire un contratto di servizio per le prestazioni dell'applicazione e monitorarlo con gli avvisi. Rilevare rapidamente quando le prestazioni dell'applicazione diminuiscono inavvertitamente al di sotto di un livello accettabile, che è importante per mantenere un'elevata resilienza. Usare la soluzione di monitoraggio definita in precedenza per impostare avvisi sulle metriche chiave delle prestazioni delle query in modo da poter intervenire quando le prestazioni interrompino il contratto di servizio. Vai a Monitora il tuo Database e agli strumenti di allerta per altre informazioni.

  • Usare il ripristino geografico per recuperare da un guasto del servizio. È possibile ripristinare un database in qualsiasi server di database SQL o in un database di istanza in qualsiasi istanza gestita in qualsiasi area di Azure dai backup con replica geografica più recenti. Il ripristino geografico usa un backup con replica geografica come origine. È possibile richiedere il ripristino geografico anche se il database o il data center non è accessibile a causa di un'interruzione. Il ripristino geografico ripristina un database da un backup con ridondanza geografica. Per altre informazioni, fare riferimento Ripristinare un database SQL di Azure usando backup automatici del database.

  • Usare il livello Business Critical configurato con la replica geografica, con un obiettivo del punto di ripristino (RPO) garantito di 5 secondi per 100% di ore distribuite.

  • Le funzionalità PaaS integrate nel database SQL di Azure consentono di concentrarsi sulle attività di amministrazione e ottimizzazione del database specifiche del dominio fondamentali per l'azienda.

  • Usa il ripristino a un punto nel tempo per recuperare da un errore umano. Il ripristino temporizzato restituisce il database a un momento precedente per recuperare i dati dalle modifiche apportate inavvertitamente. Per altre informazioni, vedere la documentazione ripristino temporizzato ( PITR).

  • I livelli Business Critical o Premium sono configurati come Distribuzioni a Zona Ridondante, che offrono una garanzia di disponibilità. Per ulteriori informazioni sulla garanzia di disponibilità, fare riferimento all'SLA per il database SQL di Azure.

Lista di controllo

Il database SQL di Azure è stato configurato tenendo presente l'affidabilità?


  • Usare Active Geo-Replication per creare un database secondario leggibile in un'area diversa.
  • Usare i gruppi di failover automatico che possono includere uno o più database, in genere usati dalla stessa applicazione.
  • Usare un database Zone-Redundant.
  • Monitorare il database SQL di Azure quasi in tempo reale per rilevare gli eventi imprevisti di affidabilità.
  • Implementare la logica di ripetizione dei tentativi.
  • Eseguire il backup delle chiavi.

Consigli sulla configurazione

Esplorare la tabella di raccomandazioni seguente per ottimizzare la configurazione del database SQL di Azure per l'affidabilità:

Raccomandazione Descrizione
Usare Active Geo-Replication per creare un database secondario leggibile in un'area diversa. Se il database primario si guasta, eseguire un failover manuale al database secondario. Finché non si esegue il failover, il database secondario rimane di sola lettura. Replica geografica attiva consente di creare repliche leggibili e di eseguire manualmente il failover in qualsiasi replica in caso di interruzione del data center o aggiornamento dell'applicazione. Sono supportati fino a quattro database secondari nelle stesse aree o in aree diverse e i database secondari possono essere usati anche per le query di accesso di sola lettura. Il failover deve essere avviato manualmente dall'applicazione o dall'utente. Dopo il failover, il nuovo database primario ha un endpoint di connessione diverso.
Usare i gruppi di failover automatico che possono includere uno o più database, in genere usati dalla stessa applicazione. È possibile utilizzare i database secondari leggibili per distribuire i carichi di lavoro delle query di sola lettura. Poiché i gruppi di failover automatico coinvolgono più database, questi database devono essere configurati nel server primario. I gruppi di autofailover supportano la replica di tutti i database nel gruppo in un solo server secondario o istanza in un'area diversa. Scopri di più sui gruppi di autofailover e sulla progettazione di disaster recovery .
Usare un database Zone-Redundant. Per impostazione predefinita, il cluster di nodi per il modello di disponibilità Premium viene creato nello stesso data center. Con l'introduzione delle zone di disponibilità di Azure, il database SQL può posizionare repliche diverse del database Business Critical in zone di disponibilità diverse nella stessa area. Per eliminare un singolo punto di guasto, l'anello di controllo viene duplicato anche in più zone come tre anelli di gateway (GW). Il routing a un anello del gateway specifico è controllato da Azure Traffic Manager (ATM). Poiché la configurazione con ridondanza della zona nei livelli di servizio Premium o Business Critical non crea ridondanza aggiuntiva del database, è possibile abilitarla senza costi aggiuntivi. Scopri di più sui database a ridondanza zonale .
Monitorare il database SQL di Azure quasi in tempo reale per rilevare gli eventi imprevisti di affidabilità. Usare una delle soluzioni disponibili per monitorare il database SQL per rilevare in anticipo potenziali eventi imprevisti di affidabilità e rendere i database più affidabili. Scegliere una soluzione di monitoraggio quasi in tempo reale per reagire rapidamente agli eventi imprevisti. Consultare Analisi SQL di Azure per ulteriori informazioni.
Implementare la logica di ripetizione dei tentativi. Anche se il database SQL di Azure è resiliente quando riguarda gli errori transitivi dell'infrastruttura, questi errori potrebbero influire sulla connettività. Quando si verifica un errore temporaneo durante l'uso del database SQL, assicurarsi che il codice possa ritentare la chiamata. Per ulteriori informazioni, consultare su come implementare la logica di ripetizione dei tentativi.
Effettua il backup delle chiavi. Se non si l'uso di chiavi di crittografia in Azure Key Vault per proteggere i dati, eseguire il backup delle chiavi.

Database SQL di Azure e sicurezza

Il database SQL offre una gamma di funzionalità di sicurezza e conformità predefinite che consentono all'applicazione di soddisfare diversi requisiti di sicurezza e conformità.

Elenco di controllo per la progettazione

Il carico di lavoro è stato progettato e configurato il database SQL di Azure tenendo presente la sicurezza?


Consigli

Raccomandazione Beneficio
Esaminare la versione minima di TLS. Determinare se sono presenti applicazioni legacy che richiedono connessioni TLS o non crittografate meno recenti. Dopo aver applicato una versione di TLS, non è possibile ripristinare l'impostazione predefinita. Esaminare e configurare la versione minima di TLS per le connessioni al database SQL tramite il portale di Azure. In caso contrario, impostare la versione minima di TLS più recente.
Registro Considerare di progettare tabelle di database in base al Ledger per fornire auditing, evidenza di manomissione e attendibilità di tutte le modifiche ai dati.
Sempre Crittografato Valutare la possibilità di progettare l'accesso alle applicazioni in base Always Encrypted per proteggere i dati sensibili all'interno delle applicazioni delegando l'accesso ai dati alle chiavi di crittografia.
Endpoint privati e collegamento privato Le connessioni endpoint private applicano la comunicazione sicura abilitando la connettività privata al database SQL di Azure. È possibile usare un endpoint privato per proteggere le connessioni e negare l'accesso alla rete pubblica per impostazione predefinita. Azure Private Link per il database SQL di Azure è un tipo di endpoint privato consigliato per il database SQL di Azure.
Valutazioni automatizzate delle vulnerabilità Monitorare la valutazione della vulnerabilità analizzare i risultati e le raccomandazioni per correggere le vulnerabilità del database.
Protezione Avanzata dalle Minacce Rilevare attività anomale che indicano tentativi insoliti e potenzialmente dannosi di accedere o sfruttare i database con Advanced Threat Protection per il database SQL di Azure. Advanced Threat Protection integra gli avvisi con Microsoft Defender for Cloud.
Controllo Tenere traccia degli eventi del database con Audit di Azure SQL Database.
Identità gestite Valutare la possibilità di configurare un'identità gestita assegnata dall'utente (UMI). Identità gestite per le risorse di Azure eliminare la necessità di gestire le credenziali nel codice.
Autenticazione esclusivamente Microsoft Entra È consigliabile disabilitare l'autenticazione basata su SQL e consentendo solo l'autenticazione di Microsoft Entra.

Definizioni dei criteri

Esamina la baseline di sicurezza di Azure per il database SQL di Azure e le definizioni integrate dei Criteri di Azure .

Tutte le definizioni di criteri predefinite correlate ad Azure SQL sono elencate in criteri predefiniti.

Esaminare Esercitazione: Proteggere un database nel database SQL di Azure.

Database SQL di Azure e ottimizzazione dei costi

database SQL di Azure è un motore di database PaaS (Platform as a Service) completamente gestito che gestisce la maggior parte delle funzioni di gestione del database senza coinvolgimento dell'utente. Le funzioni di gestione includono:

  • Aggiornamenti
  • Patch
  • Backup
  • Monitoraggio

Questo servizio consente di creare un livello di archiviazione dati a disponibilità elevata e ad alte prestazioni per le applicazioni e i carichi di lavoro di Azure. Il database SQL include funzionalità di intelligence predefinite che consentono di ridurre notevolmente i costi di esecuzione e gestione dei database tramite il monitoraggio automatico delle prestazioni e l'ottimizzazione.

Per altre informazioni su come il database SQL di Azure offre funzionalità di risparmio sui costi, fare riferimento Pianificare e gestire i costi per il database SQL di Azure.

Le sezioni seguenti includono un elenco di controllo di configurazione e le opzioni di configurazione consigliate specifiche per il database SQL di Azure e l'ottimizzazione dei costi.

Lista di controllo

Il database SQL di Azure è stato configurato tenendo presente l'ottimizzazione dei costi?


Consigli sulla configurazione

Esplorare la tabella seguente di consigli per ottimizzare la configurazione del database SQL di Azure per risparmiare sui costi:

Raccomandazione Descrizione
Ottimizzate le query. Ottimizzare le query, le tabelle e i database usando Informazioni dettagliate sulle prestazioni delle query e Raccomandazioni sulle prestazioni per ridurre il consumo delle risorse e arrivare alla configurazione appropriata.
Valutare l'utilizzo delle risorse. Valutare l'uso delle risorse per tutti i database e determinare se sono stati ridimensionati e provisionati correttamente. Per i database non di produzione, valutare la possibilità di ridurre le risorse in base alle esigenze. Le DTU o i vCore per un database possono essere ridimensionati su richiesta, ad esempio quando si esegue un test di carico o un test di accettazione dell'utente.
Ottimizzare l'utilizzo dell'archiviazione di backup Per i database vCore nel database SQL di Azure, l'archiviazione utilizzata da ogni tipo di backup (completo, differenziale e log) viene segnalata nel riquadro di monitoraggio del database come metrica separata. L'utilizzo dell'archiviazione di backup fino alle dimensioni massime dei dati per un database non viene addebitato. L'utilizzo eccessivo dell'archiviazione di backup dipenderà dal carico di lavoro e dalle dimensioni massime dei singoli database. Per ulteriori informazioni, vedere consumo dello spazio di archiviazione di backup.
Valutare il serverless del database SQL di Azure. È consigliabile usare serverless del database SQL di Azure tramite il livello di calcolo con provisioning. Serverless è un livello di calcolo per database singoli che ridimensiona automaticamente le risorse di calcolo in base alla domanda del carico di lavoro e alle fatture per la quantità di calcolo usata al secondo. Il livello di calcolo serverless sospende automaticamente anche i database durante i periodi inattivi quando viene fatturata solo l'archiviazione. Riprende automaticamente i database quando viene restituita l'attività. Il serverless del database SQL di Azure non è adatto a tutti gli scenari. Se hai un database con modelli di utilizzo imprevedibili o ad alta intensità, alternati a periodi di utilizzo basso o inattivi, una soluzione serverless può aiutarti a ottimizzare il rapporto costo-prestazioni.
Prendere in considerazione la capacità riservata per il database SQL di Azure. È possibile ridurre i costi di calcolo associati al database SQL di Azure usando sconto per la prenotazione. Dopo aver determinato la capacità di calcolo totale e il livello di prestazioni per i database SQL di Azure in un'area, è possibile usare queste informazioni per riservare la capacità. La prenotazione può durare uno o tre anni. Per ulteriori informazioni, vedere Risparmio sui costi delle risorse con capacità riservata.
I pool elastici consentono di gestire e ridimensionare più database nel database SQL di Azure I pool elastici del database SQL di Azure sono una soluzione semplice e conveniente per la gestione e il ridimensionamento di più database con esigenze di utilizzo variabili e imprevedibili. I database in un pool elastico si trovano in un singolo server e condividono un numero impostato di risorse a un prezzo impostato. Per ulteriori informazioni, vedere Pool Elastici per la gestione e il ridimensionamento di più database.

Per altre informazioni, vedere Pianificare e gestire i costi per il database SQL di Azure.

Database SQL di Azure ed eccellenza operativa

database SQL di Azure è un motore di database PaaS (Platform as a Service) completamente gestito che gestisce la maggior parte delle funzioni di gestione del database senza coinvolgimento dell'utente. Le funzioni di gestione includono:

  • Aggiornamenti
  • Patch
  • Backup
  • Monitoraggio

Questo servizio consente di creare un livello di archiviazione dati a disponibilità elevata e ad alte prestazioni per le applicazioni e i carichi di lavoro di Azure. Il database SQL di Azure offre funzionalità avanzate di monitoraggio e ottimizzazione supportate dall'intelligenza artificiale per facilitare la risoluzione dei problemi e ottimizzare le prestazioni dei database e delle soluzioni.

Per altre informazioni su come il database SQL di Azure promuove l'eccellenza operativa e consente all'azienda di continuare a funzionare durante le interruzioni, fare riferimento Monitoraggio e ottimizzazione delle prestazioni nel database SQL di Azure.

Le sezioni seguenti includono considerazioni sulla progettazione, un elenco di controllo della configurazione e opzioni di configurazione consigliate specifiche per il database SQL di Azure ed eccellenza operativa.

Considerazioni sulla progettazione

Il database SQL di Azure include le considerazioni di progettazione seguenti:

  • Il livello Business Critical del database SQL di Azure configurato con la replica geografica ha un obiettivo di tempo di ripristino (RTO) garantito di 30 secondi per 100% di ore distribuite.

  • Usare sharding per distribuire i dati e i processi in molti database strutturati in modo identico. Il partizionamento orizzontale offre un'alternativa agli approcci tradizionali per aumentare i costi e l'elasticità. È consigliabile usare il partizionamento orizzontale per partizionare il database. Il partizionamento orizzontale può fornire l'isolamento degli errori. Per ulteriori informazioni, fare riferimento a Scalabilità orizzontale con Azure SQL Database.

  • I livelli Business Critical o Premium del database SQL di Azure non sono configurati per le distribuzioni con ridondanza della zona, i livelli Per utilizzo generico, Standard o Basic o Hyperscale con due o più repliche hanno una garanzia di disponibilità. Per altre informazioni, vedere contratto di servizio per il database SQL di Azure.

  • Fornisce alta disponibilità regionale integrata e geo-replica pronta all'uso in qualsiasi area di Azure. Include l'intelligenza per supportare le funzionalità di auto-guida, ad esempio:

    • Ottimizzazione delle prestazioni
    • Monitoraggio delle minacce
    • Valutazioni delle vulnerabilità
    • Applicazione di patch e aggiornamento completamente automatizzati della codebase
  • Definire un contratto di servizio per le prestazioni dell'applicazione e monitorarlo con gli avvisi. Rilevare rapidamente quando le prestazioni dell'applicazione diminuiscono inavvertitamente al di sotto di un livello accettabile è importante per mantenere un'elevata resilienza. Usare la soluzione di monitoraggio definita in precedenza per impostare avvisi sulle metriche chiave delle prestazioni delle query in modo da poter intervenire quando le prestazioni interrompino il contratto di servizio. Per altre informazioni, vedere Monitorare il database.

  • Usare il ripristino geografico per recuperare da un'interruzione del servizio. È possibile ripristinare un database in qualsiasi server di database SQL o in un database di istanza in qualsiasi istanza gestita in qualsiasi area di Azure dai backup con replica geografica più recenti. Il ripristino geografico usa un backup con replica geografica come origine. È possibile richiedere il ripristino geografico anche se il database o il data center non è accessibile a causa di un'interruzione. Il ripristino geografico ripristina un database da un backup con ridondanza geografica. Per altre informazioni, fare riferimento Ripristinare un database SQL di Azure usando backup automatici del database.

  • Usare il livello Business Critical configurato con replica geografica, che ha un obiettivo del punto di ripristino (RPO) garantito di 5 secondi per 100% di ore di funzionamento.

  • Le funzionalità PaaS integrate nel database SQL di Azure consentono di concentrarsi sulle attività di amministrazione e ottimizzazione del database specifiche del dominio fondamentali per l'azienda.

  • Usare il ripristino a un punto nel tempo per recuperare da un errore umano. Il ripristino temporizzato restituisce il database a un momento precedente per recuperare i dati dalle modifiche apportate inavvertitamente. Per ulteriori informazioni, leggere la documentazione ripristino temporizzato (PITR).

  • I livelli Business Critical o Premium sono configurati come distribuzioni a ridondanza di zona. Per altre informazioni sulla garanzia di disponibilità, fare riferimento contratto di servizio per il database SQL di Azure .

  • Backup di Azure è un'alternativa al sistema di backup SQL di Azure predefinito. Offre soluzioni centralizzate senza infrastruttura per backup completi, differenziali e di log. Le funzionalità principali includono il ripristino temporizzato, la conservazione a lungo termine e la gestione centralizzata dei database di SQL Server nelle macchine virtuali di Azure. Usa le API native di SQL e si integra senza problemi con il vault dei Servizi di ripristino di Azure per operazioni di backup e ripristino sicure ed efficienti. Per altre informazioni, vedere Panoramica del backup di SQL Server nelle macchine virtuali di Azure.

Lista di controllo

Il database SQL di Azure è stato configurato tenendo presente l'eccellenza operativa?


  • Usare Active Geo-Replication per creare un database secondario leggibile in un'area diversa.
  • Usare i gruppi di failover automatico che possono includere uno o più database, in genere usati dalla stessa applicazione.
  • Usare un database Zone-Redundant.
  • Monitorare il database SQL di Azure quasi in tempo reale per rilevare gli eventi imprevisti di affidabilità.
  • Implementare la logica di ripetizione dei tentativi.
  • Eseguire il backup delle chiavi.
  • Usare Backup di Azure per proteggere un server di database SQL di Azure.

Consigli sulla configurazione

Esplorare la tabella seguente di raccomandazioni per ottimizzare la configurazione del database SQL di Azure per l'eccellenza operativa:

Raccomandazione Descrizione
Usare Active Geo-Replication per creare un database secondario leggibile in un'area diversa. Se il database primario non riesce, eseguire un failover manuale nel database secondario. Finché non si esegue il failover, il database secondario rimane di sola lettura. Replica geografica attiva consente di creare repliche leggibili e di eseguire manualmente il failover in qualsiasi replica in caso di interruzione del data center o aggiornamento dell'applicazione. Sono supportati fino a quattro database secondari nelle stesse aree o in aree diverse e i database secondari possono essere usati anche per le query di accesso di sola lettura. Il failover deve essere avviato manualmente dall'applicazione o dall'utente. Dopo il failover, il nuovo database primario ha un endpoint di connessione diverso.
Usare i gruppi di failover automatico che possono includere uno o più database, in genere usati dalla stessa applicazione. È possibile usare i database secondari leggibili per eseguire l'offload dei carichi di lavoro di query di sola lettura. Poiché i gruppi di failover automatico coinvolgono più database, questi database devono essere configurati nel server primario. I gruppi di autofailover supportano la replica di tutti i database nel gruppo in un solo server secondario o istanza in un'area diversa. Altre informazioni sui Gruppi di Failover Automatico e sulla Progettazione di Disaster Recovery.
Usare un database Zone-Redundant. Per impostazione predefinita, il cluster di nodi per il modello di disponibilità Premium viene creato nello stesso data center. Con l'introduzione delle zone di disponibilità di Azure, il database SQL può posizionare repliche diverse del database Business Critical in zone di disponibilità diverse nella stessa area. Per eliminare un singolo punto di guasto, l'anello di controllo viene duplicato anche in più zone come tre anelli di gateway (GW). Il routing verso un anello specifico del gateway è controllato da Azure Traffic Manager (ATM). Poiché la configurazione con ridondanza della zona nei livelli di servizio Premium o Business Critical non crea ridondanza aggiuntiva del database, è possibile abilitarla senza costi aggiuntivi. Ulteriori informazioni sui database a zona ridondante .
Monitorare il database SQL di Azure quasi in tempo reale per rilevare gli eventi imprevisti di affidabilità. Usare una delle soluzioni disponibili per monitorare il database SQL per rilevare in anticipo potenziali eventi imprevisti di affidabilità e rendere i database più affidabili. Scegliere una soluzione di monitoraggio quasi in tempo reale per reagire rapidamente agli eventi imprevisti. Per ulteriori informazioni, consultare Analisi SQL di Azure, riferimento .
Implementare la logica di ripetizione dei tentativi. Anche se il database SQL di Azure è resiliente quando riguarda gli errori transitivi dell'infrastruttura, questi errori potrebbero influire sulla connettività. Quando si verifica un errore temporaneo durante l'uso del database SQL, assicurarsi che il codice possa ritentare la chiamata. Per altre informazioni, fare riferimento a come implementare la logica di ripetizione dei tentativi e Logica di ripetizione dei tentativi configurabile nell'introduzione di SqlClient.
Fai il backup delle chiavi. Se non si l'uso di chiavi di crittografia in Azure Key Vault per proteggere i dati, eseguire il backup delle chiavi.
Usare Backup di Azure per proteggere un server di database SQL di Azure. L'uso di Backup di Azure per proteggere il server di database SQL di Azure consente di gestire centralmente la continuità aziendale e il ripristino di emergenza dall'insieme di credenziali di Servizi di ripristino, mantenere i punti di ripristino per l'archiviazione a lungo termine ed eseguire ripristino tra aree e ripristino tra sottoscrizioni. Con le [funzionalità di protezione dei dati predefinite] nel [vault di Servizi di ripristino di Azure](/azure/backup/backup-azure-recovery-services-vault-overview#key-features), puoi impedire eventuali eliminazioni accidentali o dannose dei backup.

Efficienza delle prestazioni e del database SQL di Azure

database SQL di Azure è un motore di database PaaS (Platform as a Service) completamente gestito che gestisce la maggior parte delle funzioni di gestione del database senza coinvolgimento dell'utente. Le funzioni di gestione includono:

  • Aggiornamenti
  • Patch
  • Backup
  • Monitoraggio

Le sezioni seguenti includono un elenco di controllo di progettazione e le opzioni di progettazione consigliate specifiche per l'efficienza delle prestazioni del database SQL di Azure.

Elenco di controllo per la progettazione

Il carico di lavoro è stato progettato e configurato il database SQL di Azure tenendo presente l'efficienza delle prestazioni?


  • Esaminare i limiti delle risorse. Per conoscere i limiti di risorse specifici per livello di prezzo (noto anche come obiettivo di servizio) per i database singoli, fare riferimento a limiti delle risorse dei database singoli basati su DTU (e) o limiti delle risorse dei database singoli basati su vCore (e). Per i limiti delle risorse dei pool elastici, fare riferimento a Limiti delle risorse dei pool elastici basati su DTU o Limiti delle risorse dei pool elastici basati su vCore .
  • Scegliere il modello di distribuzione appropriato per il carico di lavoro, vCore o DTU. Confrontare i modelli di acquisto basati su vCore e DTU.
  • Microsoft consiglia la versione più recente dell'hardware della serie standard del database vCore o della serie Premium. L'hardware di prima generazione è stato ritirato.
  • Quando si usano pool elastici, acquisire familiarità con governance delle risorse.
  • Esaminare il max degree of parallelism (MAXDOP) predefinito e configurare in base alle esigenze in base a un carico di lavoro migrato o previsto.
  • È consigliabile usare repliche di sola lettura del database critico per eseguire l'offload dei carichi di lavoro di query di sola lettura.
  • Esaminare il Centro prestazioni di per il motore di database di SQL Server e il database SQL di Azure.
  • Le applicazioni che si connettono al database SQL di Azure devono usare i provider di connessione più recenti, ad esempio il driver OLE DB o il driver ODBC .

Consigli

Raccomandazione Beneficio
Diagnosticare e risolvere i problemi di utilizzo elevato della CPU. Il database SQL di Azure offre strumenti predefiniti per identificare le cause dell'utilizzo elevato della CPU e ottimizzare le prestazioni del carico di lavoro.
Comprendere i problemi di blocco e di stallo. Blocchi dovuti a concorrenza e sessioni terminate a causa di deadlock hanno cause e risultati diversi.
Ottimizzare le applicazioni e i database per le prestazioni. Ottimizzare l'applicazione e il database per migliorare le prestazioni. Esaminare le procedure consigliate.
Esaminare la creazione di report e la scalabilità dell'utilizzo del portale di Azure in base alle esigenze. Dopo la distribuzione, usare i report incorporati nel portale di Azure per esaminare regolarmente il picco e l'utilizzo medio del database e adeguare opportunamente le dimensioni verso l'alto o verso il basso. È possibile ridimensionare facilmente database singoli o pool elastici con senza perdita di dati e tempi di inattività minimi.
Esaminare le raccomandazioni sulle prestazioni. Nel menu Prestazioni Intelligenti della pagina del database nel portale di Azure, esaminare e considerare eventuali azioni sulle raccomandazioni sulle prestazioni e risolvere eventuali problemi di indicizzazione, schema e parametrizzazione.
Esaminare Approfondimenti sulle prestazioni delle query. Esaminare informazioni dettagliate sulle prestazioni delle query per il database SQL di Azure report per identificare le query che utilizzano le risorse principali, le query a esecuzione prolungata e altro ancora.
Configurare Ottimizzazione automatica. Offrire prestazioni ottimali e carichi di lavoro stabili tramite l'ottimizzazione continua delle prestazioni basata su intelligenza artificiale e Machine Learning. È consigliabile utilizzare Azure Automation per configurare le notifiche email per l'ottimizzazione automatica.
Valutare il potenziale utilizzo di oggetti di database in memoria. tecnologie in memoria consentono di migliorare le prestazioni dell'applicazione e di ridurre potenzialmente i costi del database. Valutare la possibilità di progettare alcuni oggetti di database in applicazioni OLTP con volumi elevati.
Sfruttare Query Store. Abilitato per impostazione predefinita nel database SQL di Azure, Query Store contiene un'ampia gamma di prestazioni delle query e di utilizzo delle risorse dati, nonché funzionalità avanzate di ottimizzazione, come hint di Query Store e correzione automatica dei piani. Esaminare le impostazioni predefinite di Query Store nel database SQL di Azure.
Implementare la logica di ripetizione dei tentativi per gli errori temporanei. Le applicazioni devono includere logica di ripetizione automatica dei tentativi delle transazioni per gli errori temporanei, inclusi gli errori di connessione comuni. Utilizzare la logica esponenziale dell'intervallo di ripetizione dei tentativi.

Risorse aggiuntive

Per informazioni sulle funzionalità supportate, vedere Funzionalità e Risoluzione delle differenze di Transact-SQL durante la migrazione al database SQL.

Migrazione al database SQL di Azure? Rivedi le nostre guide alla migrazione del database di Azure .

Guarda gli episodi di Dati Esposti che illustrano gli argomenti di Azure SQL e altro ancora.

Passaggi successivi