Metriche di Performance Insights per le istanze DB - AWS Guida prescrittiva

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Metriche di Performance Insights per le istanze DB

Performance Insights monitora diversi tipi di metriche, come discusso nelle sezioni seguenti.

Caricamento database

Caricamento del database (DBLoad) è una metrica chiave di Performance Insights che misura il livello di attività nel tuo database. Viene raccolto ogni secondo e pubblicato automaticamente su AmazonCloudWatch. Rappresenta l'attività dell'istanza database in sessioni attive medie (AAS), ovvero il numero di sessioni che eseguono contemporaneamente query SQL. LaDBLoadla metrica è diversa dalle altre metriche delle serie temporali, perché può essere interpretata utilizzando una di queste cinque dimensioni: attese, SQL, host, utenti e database. Queste dimensioni sono sottocategorie diDBLoadmetrico. Puoi usarli comefetta percategorie per rappresentare le diverse caratteristiche del carico del database. Per una descrizione dettagliata di come calcoliamo il carico del database, vedereCaricamento del databasenella documentazione di Amazon RDS.

La seguente illustrazione della schermata mostra lo strumento Performance Insights.

Caricamento del database nello strumento Performance Insights

Dimensioni

  • Attendere gli eventisono condizioni in cui una sessione del database attende il completamento di una risorsa o di un'altra operazione per continuare l'elaborazione. Se si esegue un'istruzione SQL comeSELECT * FROM big_tablee se questa tabella è molto più grande del pool di buffer InnoDB allocato, molto probabilmente la tua sessione aspetteràwait/io/file/innodb/innodb_data_fileeventi di attesa, causati da operazioni fisiche di I/O sul file di dati. Gli eventi di attesa sono una dimensione importante per il monitoraggio del database, poiché indicano possibili rallentamenti delle prestazioni. Gli eventi di attesa indicano le risorse e le operazioni che le istruzioni SQL eseguite all'interno delle sessioni impiegano più tempo ad aspettare. Ad esempio,wait/synch/mutex/innodb/trx_sys_mutexl'evento si verifica quando c'è un'elevata attività del database con un numero elevato di transazioni ewait/synch/mutex/innodb/buf_pool_mutexl'evento si verifica quando un thread ha acquisito un blocco sul pool di buffer di InnoDB per accedere a una pagina in memoria. Per informazioni su tutti gli eventi di attesa di MySQL e MariaDB, vedereTabelle di riepilogo degli eventi di attesanella documentazione di MySQL. Per capire come interpretare i nomi degli strumenti, vedereConvenzioni di denominazione degli strumenti dello schema delle prestazioninella documentazione di MySQL.

  • SQLmostra quali istruzioni SQL contribuiscono maggiormente al carico totale del database. LaDimensioni superioritavolo, che si trova sotto ilCaricamento del databaseil grafico in Amazon RDS Performance Insights è interattivo. È possibile ottenere un elenco dettagliato degli eventi di attesa associati all'istruzione SQL facendo clic sulla barra nelCaricamento in attesa (AAS)colonna. Quando si seleziona un'istruzione SQL nell'elenco, Performance Insights visualizza gli eventi di attesa associati nelCaricamento del databasegrafico e il testo dell'istruzione SQL neltesto SQLsezione. Le statistiche SQL vengono visualizzate sul lato destro delDimensioni superioritavolo.

  • Padronimostra i nomi degli host dei client connessi. Questa dimensione consente di identificare quali host client inviano la maggior parte del carico al database.

  • Utentiraggruppa il carico del DB da parte degli utenti che hanno effettuato l'accesso al database.

  • Banche datiraggruppa il carico del database in base al nome del database a cui è connesso il client.

Parametri dei contatori

Le contatori sono metriche cumulative i cui valori possono aumentare o azzerarsi solo al riavvio dell'istanza database. Il valore di una contometrica non può essere ridotto al valore precedente. Queste metriche rappresentano un singolo contatore che aumenta in modo monotono.

  • Contatori nativisono metriche definite dal motore del database e non da Amazon RDS. Ad esempio:

    • SQL.Innodb_rows_insertedrappresenta il numero di righe inserite nelle tabelle InnoDB.

    • SQL.Select_scanrappresenta il numero di join che hanno completato una scansione completa della prima tabella.

    • Cache.Innodb_buffer_pool_readsrappresenta il numero di letture logiche che il motore InnoDB non è riuscito a recuperare dal pool di buffer e ha dovuto leggere direttamente dal disco.

    • Cache.Innodb_buffer_pool_read_requestsrappresenta il numero di richieste di lettura logiche.

    Per le definizioni di tutte le metriche native, vediVariabili di stato del servernella documentazione di MySQL.

  • Contatori non nativisono definiti da Amazon RDS. Puoi ottenere queste metriche utilizzando una query specifica o derivarle utilizzando due o più metriche native nei calcoli. Le metriche dei contatori non native possono rappresentare latenze, rapporti o percentuali di successo. Ad esempio:

    • Cache.innoDB_buffer_pool_hitsrappresenta il numero di operazioni di lettura che InnoDB può recuperare dal pool di buffer senza utilizzare il disco. Viene calcolato in base alle metriche dei contatori nativi come segue:

      db.Cache.Innodb_buffer_pool_read_requests - db.Cache.Innodb_buffer_pool_reads
    • IO.innoDB_datafile_writes_to_diskrappresenta il numero di operazioni di scrittura di file di dati InnoDB su disco. Cattura solo le operazioni sui file di dati, non le operazioni di doppia scrittura o redo logging e scrittura. Viene calcolato come segue:

      db.IO.Innodb_data_writes - db.IO.Innodb_log_writes - db.IO.Innodb_dblwr_writes

Puoi visualizzare le metriche delle istanze DB direttamente nella dashboard di Performance Insights. ScegliGestisci le metriche, scegli laMetriche del databaseTocca, quindi seleziona le metriche di interesse, come mostrato nella figura seguente.

Selezione delle metriche delle istanze DB in Performance Insights

Scegli laAggiorna graficopulsante per visualizzare le metriche selezionate, come mostrato nella figura seguente.

Visualizzazione delle metriche delle istanze DB in Performance Insights

Statistiche SQL

Performance Insights raccoglie metriche relative alle prestazioni sulle query SQL per ogni secondo di esecuzione di una query e per ogni chiamata SQL. In generale, Performance Insights raccoglieStatistiche SQLa livello di dichiarazione e riassunto. Tuttavia, per le istanze DB di MariaDB e MySQL, le statistiche vengono raccolte solo a livello di riepilogo.

  • Digest statistics è una metrica composita di tutte le query che hanno lo stesso schema ma che alla fine hanno valori letterali diversi. Il digest sostituisce valori letterali specifici con una variabile; ad esempio:

    SELECT department_id, department_name FROM departments WHERE location_id = ?
  • Esistono metriche che rappresentano le statisticheal secondoper ogni istruzione SQL digerita. Ad esempio,sql_tokenized.stats.count_star_per_secrappresenta le chiamate al secondo (ovvero, quante volte al secondo è stata eseguita l'istruzione SQL).

  • Performance Insights include anche metriche che fornisconoper chiamatastatistiche per un'istruzione SQL. Ad esempio,sql_tokenized.stats.sum_timer_wait_per_callmostra la latenza media dell'istruzione SQL per chiamata, in millisecondi.

Le statistiche SQL sono disponibili nella dashboard di Performance Insights, nelI migliori SQLscheda delDimensioni superioritavolo.

Statistiche SQL