Share via


IOPS di archiviazione nel Database di Azure per MySQL - Server flessibile

SI APPLICA A: Database di Azure per MySQL - Server flessibile

Le IOPS (operazioni di I/O al secondo) di archiviazione fanno riferimento al numero di operazioni di lettura e scrittura che possono essere eseguite ogni secondo dal sistema di archiviazione. I valori di IOPS più elevati indicano prestazioni di archiviazione migliori, consentendo al database di gestire un maggior numero di operazioni di lettura e scrittura in simultanea, con conseguente maggiore velocità di recupero dei dati e miglioramento dell'efficienza complessiva. Quando l’impostazione IOPS è settata su valori troppo bassi, il server di database potrebbe riscontrare ritardi nell'elaborazione delle richieste, con conseguente rallentamento delle prestazioni e riduzione della velocità effettiva. D'altra parte, l'impostazione IOPS settata su valori troppo elevati può comportare un'allocazione delle risorse non necessaria e un potenziale aumento dei costi senza miglioramenti significativi delle prestazioni.

Il server flessibile di Database di Azure per MySQL offre attualmente due impostazioni per la gestione delle operazioni IOPS: le operazioni IOPS con provisioning preliminare e la scalabilità automatica delle operazioni IOPS.

Operazioni IOPS con pre-provisioning

Il server flessibile di Database di Azure per MySQL offre operazioni IOPS con provisioning preliminare, cosa che consente di allocare un numero specifico di operazioni IOPS all'istanza del server flessibile di Database di Azure per MySQL. Questa impostazione garantisce prestazioni coerenti e prevedibili per i carichi di lavoro. Con il pre-provisioning delle operazioni IOPS è possibile definire un limite di operazioni IOPS specifico per il volume di archiviazione, garantendo la possibilità di gestire un determinato numero di richieste al secondo. Ciò comporta un livello di prestazioni affidabile e garantito.

Inoltre, le operazioni IOPS aggiuntive con provisioning preliminare fanno riferimento alla flessibilità di aumentare le operazioni IOPS di cui è stato effettuato il provisioning per il volume di archiviazione associato al server. È possibile aggiungere altre operazioni IOPS oltre il livello di provisioning predefinito, consentendo di personalizzare le prestazioni in base ai requisiti del carico di lavoro in qualsiasi momento.

Operazioni IOPS con scalabilità automatica

La scalabilità automatica delle operazioni IOPS offre la flessibilità necessaria per ridimensionare le operazioni IOPS su richiesta, eliminando la necessità di effettuare il pre-provisioning di una quantità specifica di I/O al secondo. Abilitando le operazioni IOPS con scalabilità automatica, il server modificherà automaticamente le operazioni IOPS in base ai requisiti del carico di lavoro. Con l'abilitazione delle operazioni IOPS con scalabilità automatica, è ora possibile usufruire senza preoccupazioni della gestione delle operazioni I/O nel server flessibile del Database di Azure per MySQL, perché il server ridimensiona automaticamente gli I/O in base alle esigenze del carico di lavoro.

Scalabilità dinamica: le operazioni IOPS con scalabilità automatica regolano dinamicamente il limite di operazioni IOPS del server di database in base alla domanda effettiva del carico di lavoro. Ciò garantisce prestazioni ottimali senza interventi o configurazioni manuali.

Gestione dei picchi di carico di lavoro: le operazioni IOPS con scalabilità automatica consentono al database di gestire facilmente picchi o fluttuazioni del carico di lavoro senza compromettere le prestazioni delle applicazioni. Questa funzionalità garantisce una velocità di risposta coerente anche durante i picchi di utilizzo.

Risparmio sui costi: a differenza delle operazioni IOPS con provisioning preliminare in cui viene specificato un limite di operazioni IOPS fisso e pagato indipendentemente dall'utilizzo, le operazioni IOPS con scalabilità automatica consentono di pagare solo per il numero di operazioni di I/O utilizzate. Con questa funzionalità, verranno addebitati solo i costi per le I/O effettivamente utilizzate dal server, evitando il provisioning e le spese non necessari per risorse sottoutilizzate. Tale scelta garantisce sia risparmi sui costi che prestazioni ottimali, rivelandosi una soluzione intelligente per la gestione efficiente del carico di lavoro del database.

Monitorare le prestazioni dell'archiviazione

Il monitoraggio dell'utilizzo delle operazioni IOPS di archiviazione è facile con le metriche disponibili in Monitoraggio.

Panoramica

Per ottenere una visualizzazione completa dell'utilizzo di I/O per il periodo di tempo selezionato. Passare a Monitoraggio nel portale di Azure per il Database di Azure per MySQL - Server flessibile nel pannello Panoramica.

Screenshot delle metriche d'insieme.

Cartella di lavoro Metriche avanzate

  • Passare a Cartelle di lavoro nella sezione Monitoraggio del portale di Azure.
  • Selezionare la cartella di lavoro "Metriche avanzate".
  • Verificare la presenza di metriche Percentuale I/O di archiviazione nella sezione Panoramica della cartella di lavoro.

Screenshot delle metriche avanzate.

Metriche in Monitoraggio

  • Passare a Metriche, nella sezione Monitoraggio del portale di Azure.
  • Selezionare l'opzione "Aggiungi metrica".
  • Scegliere "Percentuale I/O di archiviazione" nell'elenco a discesa delle metriche disponibili.
  • Scegliere "Conteggio I/O di archiviazione" nell'elenco a discesa delle metriche disponibili.

Screenshot delle metriche di monitoraggio.

Selezione dell'impostazione ottimale delle operazioni IOPS

Dopo aver appreso come monitorare efficacemente l'utilizzo delle operazioni IOPS, si è ora in grado di scoprire quali sono le impostazioni migliori per il server. Quando si sceglie l'impostazione delle operazioni IOPS per l'istanza del server flessibile di Database di Azure per MySQL, è necessario considerare diversi fattori importanti. La comprensione di tali fattori consente di prendere una decisione informata al fine di garantire le migliori prestazioni e l'efficienza dei costi per il carico di lavoro.

Ottimizzazione delle prestazioni

Grazie alle operazioni IOPS con scalabilità automatica è possibile soddisfare requisiti coerenti per il carico di lavoro, che risulta prevedibile senza avere lo svantaggio della limitazione dell'archiviazione e dell'interazione manuale finalizzata ad aggiungere altre operazioni IOPS. Se il carico di lavoro ha una velocità effettiva coerente o richiede operazioni IOPS coerenti, allora le operazioni IOPS con provisioning preliminare possono risultare preferibili. Forniscono un livello di prestazioni prevedibile e l'allocazione fissa delle operazioni IOPS è correlata al carico di lavoro entro i limiti specificati. Tuttavia, per eventuali requisiti di velocità effettiva superiore rispetto al consueto, è possibile assegnare operazioni IOPS con provisioning preliminare aggiuntive, cosa che richiede l'interazione manuale e la comprensione dell'aumento del tempo di velocità effettiva.

Impatto della limitazione di richieste

Prendere in considerazione l'impatto della limitazione del carico di lavoro. Se la potenziale riduzione delle prestazioni dovuta alla limitazione è un problema, le operazioni IOPS con scalabilità automatica sono in grado di gestire dinamicamente i picchi del carico di lavoro, riducendo al minimo il rischio di limitazione e mantenendo le prestazioni a un livello ottimale.

In definitiva, la decisione tra operazioni IOPS con scalabilità automatica e con provisioning preliminare dipende dai requisiti specifici del carico di lavoro e dalle aspettative sulle prestazioni. Analizzare i modelli di carico di lavoro, valutare le implicazioni sui costi e valutare il potenziale impatto della limitazione per fare una scelta informata che sia allineata alle priorità. Considerando le caratteristiche specifiche del carico di lavoro del database, come le fluttuazioni del traffico, i modelli di query e i requisiti di prestazioni, è possibile prendere una decisione informata relativamente alla scelta tra operazioni IOPS con scalabilità automatica e IOPS con provisioning preliminare.

Considerazioni sul carico di lavoro Operazioni IOPS con pre-provisioning Operazioni IOPS con scalabilità automatica
Carichi di lavoro con modelli di I/O coerenti e prevedibili Consigliato, in quanto utilizza solo operazioni IOPS di cui è stato effettuato il provisioning Compatibile, non è richiesto alcun provisioning manuale delle operazioni IOPS
Carichi di lavoro con modelli di utilizzo diversi Non consigliato perché potrebbe non offrire prestazioni efficienti durante i periodi di utilizzo elevati. Consigliato perché si adatta automaticamente alla gestione di carichi di lavoro variabili
Carichi di lavoro con crescita dinamica o modifica delle esigenze prestazionali Non consigliato perché richiede rettifiche costanti in base alla modifica del requisito delle operazioni IOPS Consigliato perché non sono necessarie impostazioni aggiuntive per requisiti di velocità effettiva specifici

Considerazioni sui costi

Se si dispone di un carico di lavoro fluttuante con picchi imprevedibili, la scelta di operazioni IOPS con scalabilità automatica potrebbe risultare più conveniente. Assicura che si paghi solo per gli IOPS più elevati utilizzati durante i periodi di picco, offrendo flessibilità e risparmi sui costi. Le operazioni IOPS con provisioning preliminare, pur fornendo operazioni coerenti e al massimo livello, possono comportare costi più elevati a seconda del carico di lavoro. Prendere in considerazione il compromesso tra costi e prestazioni richiesti dal server.

Testare e valutare

Se non si è certi dell'impostazione ottimale delle operazioni IOPS, valutare l'esecuzione di test delle prestazioni usando operazioni IOPS con scalabilità automatica e con provisioning preliminare. Valutare i risultati e determinare quale impostazione soddisfa i requisiti del carico di lavoro e le aspettative sulle prestazioni.

Esempi di carichi di lavoro: siti web di e-commerce

Il caso di un sito web di e-commerce che sperimenta fluttuazioni del traffico nel corso dell’intero anno. In periodi normali, il carico di lavoro è moderato, ma durante le festività o nel corso di promozioni speciali, il traffico aumenta in modo esponenziale.

Operazioni IOPS con scalabilità automatica: con le operazioni IOPS con scalabilità automatica, il database può regolare dinamicamente le operazioni IOPS per gestire l'aumento del carico di lavoro durante i periodi di picco. Quando il traffico aumenta, come nel caso delle vendite del Black Friday, la funzionalità di scalabilità automatica consente al database di aumentare facilmente le operazioni IOPS per soddisfare la domanda. Ciò garantisce prestazioni uniformi e ininterrotte, impedendo rallentamenti o interruzioni del servizio. Dopo il periodo di picco, quando il traffico diminuisce, la riduzione delle operazioni IOPS consente di risparmiare sui costi, in quanto si paga solo per le risorse utilizzate durante la fase incrementale.

Operazioni IOPS con provisioning preliminare: se si sceglie di effettuare il pre-provisioning delle operazioni IOPS, è necessario stimare la capacità massima del carico di lavoro e allocare di conseguenza un numero fisso di operazioni IOPS. Tuttavia, durante i periodi di picco, il carico di lavoro potrebbe superare il limite di operazioni IOPS predeterminate. Di conseguenza, l'I/O di archiviazione potrebbe limitare, influire sulle prestazioni e potenzialmente causare ritardi o timeout per gli utenti.

Esempio di carichi di lavoro: creazione di report /piattaforme di analisi dei dati

Si supponga di avere un server flessibile di Database di Azure per MySQL usato per l'analisi dei dati in cui gli utenti inviano query complesse e attività di elaborazione dati su larga scala. Il modello di carico di lavoro è relativamente coerente, con un flusso costante di query durante il giorno.

Operazioni IOPS con provisioning preliminare: grazie alle operazioni IOPS con provisioning preliminare è possibile selezionare un numero appropriato di operazioni IOPS in base al carico di lavoro previsto. Se le operazioni IOPS scelte gestiscono adeguatamente il volume di query giornaliero, non esiste alcun rischio di limitazione o riduzione delle prestazioni. Questo approccio offre prevedibilità dei costi e consente di ottimizzare le risorse in modo efficiente senza la necessità di ridimensionamento dinamico.

Operazioni IOPS con scalabilità automatica: la funzionalità di scalabilità automatica potrebbe non offrire vantaggi significativi in questo caso. Poiché il carico di lavoro è coerente, è possibile effettuare il provisioning del database con un numero fisso di operazioni IOPS che soddisfano comodamente la domanda. La scalabilità automatica potrebbe non essere necessaria perché non sono presenti picchi improvvisi di attività che richiedano operazioni IOPS aggiuntive. Usando operazioni IOPS con provisioning preliminare, si ottengono prestazioni prevedibili senza la necessità di ridimensionamento e il costo è direttamente associato all'archiviazione allocata.

Domande frequenti

Come passare dalle operazioni IOPS con provisioning preliminare alle operazioni IOPS con scalabilità automatica?

  • Accedere al portale di Azure e individuare il server flessibile di Database di Azure per MySQL pertinente.
  • Passare al pannello Impostazioni e scegliere la sezione Calcolo e archiviazione.
  • Nella sezione Operazioni IOPS, scegliere Operazioni IOPS con scalabilità automatica e salvare le impostazioni per applicare le modifiche.

Quanto tempo ci vuole perché la funzionalità di scalabilità automatica delle operazioni IOPS diventi effettiva dopo aver effettuato la modifica?

Una volta aver abilitato Operazioni IOPS con scalabilità automatica per il server flessibile di Database di Azure per MySQL e aver salvato le impostazioni, le modifiche diventano effettive immediatamente dopo il completamento della distribuzione nella risorsa. Ciò significa che la funzionalità Operazioni IOPS con scalabilità automatica sarà applicata al database senza alcun ritardo.

In che modo un'operazione di ripristino temporizzato (Point-In-Time Restore, PITR) influisce sull'utilizzo delle operazioni IOPS?

Durante un'operazione PITR in Database di Azure per MySQL - Server flessibile, viene creato un nuovo server e i dati vengono copiati dall'archiviazione del server di origine alla risorsa di archiviazione del nuovo server. Tale processo comporta un aumento dell'utilizzo delle operazioni IOPS nel server di origine. Questo aumento dell'utilizzo delle operazioni IOPS è un'occorrenza normale e è indice di problemi con il server di origine o con l'operazione PITR. Al termine dell'operazione PITR, l'utilizzo delle operazioni IOPS nel server di origine torna ai livelli consueti. Per altre informazioni su PITR, è possibile fare riferimento alla sezione Backup e ripristino nella documentazione del Database di Azure per MySQL - Server flessibile.

Come sapere quando le IOPS sono aumentate e diminuite nel momento in cui il server utilizza la funzionalità IOPS con scalabilità automatica? Oppure è possibile monitorare l'utilizzo delle operazioni IOPS per il server in uso?

Fare riferimento alla sezione "Monitorare le prestazioni di archiviazione", che consente di verificare se il server ha aumentato o diminuito le prestazioni durante un intervallo di tempo specifico.

È possibile passare da operazioni IOPS con scalabilità automatica a operazioni IOPS con provisioning preliminare in un secondo momento?

Sì, è possibile tornare alle operazioni IOPS con provisioning preliminare optando per operazioni IOPS con provisioning preliminare nella sezione Calcolo e archiviazione nel pannello Impostazioni.

Come faccio a sapere quante operazioni IOPS sono state usate per il server flessibile di Database di Azure per MySQL?

Andando a Monitoraggio, nella sezione Panoramica, oppure passando a Metriche conteggio I/O nel pannello Monitoraggio. La metrica conteggio I/O fornisce la somma delle operazioni di operazioni IOPS usate dal server nell'intervallo di tempo selezionato.

Passaggi successivi