Seleziona le tue preferenze relative ai cookie

Utilizziamo cookie essenziali e strumenti simili necessari per fornire il nostro sito e i nostri servizi. Utilizziamo i cookie prestazionali per raccogliere statistiche anonime in modo da poter capire come i clienti utilizzano il nostro sito e apportare miglioramenti. I cookie essenziali non possono essere disattivati, ma puoi fare clic su \"Personalizza\" o \"Rifiuta\" per rifiutare i cookie prestazionali.

Se sei d'accordo, AWS e le terze parti approvate utilizzeranno i cookie anche per fornire utili funzionalità del sito, ricordare le tue preferenze e visualizzare contenuti pertinenti, inclusa la pubblicità pertinente. Per continuare senza accettare questi cookie, fai clic su \"Continua\" o \"Rifiuta\". Per effettuare scelte più dettagliate o saperne di più, fai clic su \"Personalizza\".

Analisi degli alberi di blocco per Amazon Aurora PostgreSQL con Database Insights CloudWatch

Modalità Focus
Analisi degli alberi di blocco per Amazon Aurora PostgreSQL con Database Insights CloudWatch - Amazon CloudWatch

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à.

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à.

Per risolvere i problemi di prestazioni causati dai blocchi, puoi analizzare gli alberi di blocco per i database PostgreSQL di Amazon Aurora con Database Insights utilizzando quanto segue. CloudWatch

  • Diviso per menu a discesa: scegli le dimensioni Blocking object, Blocking session o Blocking SQL nel grafico di caricamento del database per vedere in che modo i principali blocker diversi contribuiscono al carico del DB nel tempo. Con il diagramma di carico del DB, puoi analizzare se i blocchi principali sono costanti o cambiano spesso. Quindi, puoi risolvere i problemi relativi ai blocchi.

  • Scheda Blocco: scegli DB Load Analysis, quindi scegli la scheda Blocco per visualizzare le informazioni sulla contesa dei blocchi nel tuo database.

Nota

CloudWatch Database Insights supporta l'analisi dei blocchi per tutte le versioni di Aurora PostgreSQL.

La scheda di analisi dei blocchi fornisce informazioni sulla contesa dei blocchi per il database. La visualizzazione ad albero dei blocchi mostra le relazioni e le dipendenze tra le richieste di blocco provenienti da sessioni diverse.

Database Insights acquisisce istantanee ogni 15 secondi. Le istantanee mostrano i dati di blocco del database in un determinato momento.

Nota

Quando CloudWatch rileva un blocco elevato, CloudWatch visualizza il banner Alto blocco rilevato per la scheda Blocco. CloudWatch rileva un blocco elevato se CloudWatch scatta un'istantanea del blocco per ogni intervallo di 15 secondi per 15 minuti consecutivi.

Ogni nodo dell'albero rappresenta una sessione specifica. Il nodo principale è una sessione che blocca i relativi nodi secondari.

Per analizzare gli alberi di blocco, utilizzare la procedura seguente.

Per analizzare i lucchetti
  1. Accedi a AWS Management Console e apri la CloudWatch console all'indirizzo https://console.aws.amazon.com/cloudwatch/.

  2. Scegli Insights.

  3. Scegli Database Insights.

  4. Scegli la vista dell'istanza del database.

  5. Scegli un'istanza database.

  6. Scegli la scheda di analisi del carico del database.

  7. Scegli la scheda Blocco.

    Per visualizzare i dati di blocco per un'istanza DB, scegli un periodo di 1 giorno o meno.

  8. Scegliete una finestra istantanea. Per impostazione predefinita, Database Insights sceglie la finestra di istantanea con le sessioni più bloccate.

    Tabella di analisi dei blocchi
  9. Per visualizzare i dati di blocco per un'istantanea, scegli l'ora in cui Database Insights ha scattato l'istantanea.

  10. Per espandere un albero di blocco, scegli la freccia accanto all'ID della sessione.

    Albero di blocco espanso

Blocca i dati delle istantanee

Database Insights fornisce le seguenti informazioni per ogni richiesta di blocco. Per visualizzare le colonne che non sono abilitate per impostazione predefinita, scegli l'icona Impostazioni per la tabella Blocca alberi e abilita le altre colonne.

Nome colonna Definizione Colonna predefinita Note

session_id

L'identificatore di sessione univoco.

session_idÈ derivato daHEX(pg_stat_activity.backend_start).HEX(pg_locks.pid).

pid

Il PID di questo backend.

pg_locks.pid

blocked_sessions_count

Il numero di sessioni bloccate da questo blocco.

Il blocked_sessions_count è derivato dal numero di sessioni IDs bloccate da questo blocco.

last_query_executed

L'ultima query eseguita da questa sessione. Per i bloccanti, potrebbe non essere la query a contenere il blocco di blocco.

pg_stat_activity.query

wait_event

Il nome dell'evento di attesa se il backend è attualmente in attesa, altrimenti il valore è NULL.

pg_stat_activity.wait_event

blocking_time_(In Seconds)

Il tempo (in secondi) dall'inizio di questo blocco.

Il blocking_time_(In Seconds) è derivato dall'ora di inizio della transazione di attesa (pg_locks.waitstart) per il primo cameriere.

blocking_mode

La modalità di blocco utilizzata dalla sessione di blocco.

No

pg_locks.mode

waiting_mode

La modalità di blocco richiesta dalla sessione di attesa.

No

pg_locks.mode

application

Il nome dell'applicazione connessa a questo backend.

No

pg_stat_activity.application_name

blocking_txn_start_time

L'ora di inizio della transazione di blocco o nulla se nessuna transazione è attiva.

No

pg_stat_activity.xact_start

waiting_start_time

L'ora in cui una sessione utente in attesa è iniziata in attesa di questo blocco, o null se il blocco è mantenuto.

No

pg_locks.waitstart

session_start_time

L'ora in cui è stata avviata una sessione utente.

No

pg_stat_activity.backend_start

state

Lo stato di un backend.

No

pg_stat_activity.state

wait_event_type

Il tipo di evento di attesa che questa sessione è in attesa.

No

pg_stat_activity.wait_event_type

last_query_exec_time

L'ora in cui è stata avviata l'ultima interrogazione.

No

pg_stat_activity.query_start

user

Il nome dell'utente che ha effettuato l'accesso a questo backend.

No

pg_stat_activity.usename

host

Il nome host del client connesso, come riportato da una ricerca DNS inversa di. client_addr Questo campo non sarà nullo solo per le connessioni IP e solo quando log_hostname è abilitato.

No

pg_stat_activity.client_hostname

port

Il numero di porta TCP utilizzato dal client per la comunicazione con questo backend o -1 se viene utilizzato un socket Unix. Se questo campo è nullo, indica che si tratta di un processo interno del server.

No

pg_stat_activity.client_port

client_address

L'indirizzo IP del client connesso a questo backend. Se questo campo è nullo, indica che il client è connesso tramite un socket Unix sulla macchina server o che si tratta di un processo interno come autovacuum.

No

pg_stat_activity.client_addr

granted

Il valore è vero se il blocco è mantenuto e falso se il blocco è atteso.

No

pg_locks.granted

waiting_tuple

Il numero di tupla indicato dal blocco all'interno della pagina o nullo se la destinazione non è una tupla.

No

pg_locks.tuple

waiting_page

Il numero di pagina indicato dal blocco all'interno della relazione o null se la destinazione non è una pagina o una tupla di relazione.

No

pg_locks.page

waiting_transaction_id

L'ID della transazione oggetto del blocco o null se la destinazione non è un ID di transazione.

No

pg_locks.transactionid

waiting_relation

L'OID della relazione presa di mira dal blocco o null se la destinazione non è una relazione o parte di una relazione.

No

pg_locks.relation

waiting_object_id

L'OID della destinazione del blocco all'interno del relativo catalogo di sistema o null se la destinazione non è un oggetto di database generale.

No

pg_locks.objid

waiting_database_id

L'OID del database in cui esiste la destinazione del blocco, o zero se la destinazione è un oggetto condiviso o null se la destinazione è un ID di transazione.

No

pg_locks.database

waiting_database_name

Il nome del database in cui esiste la destinazione del blocco.

No

pg_stat_activity.datname

waiting_locktype

Il tipo di oggetto bloccabile: relation, extend, frozenid, page, tuple, transactionid, virtualxid, spectoken, object, userlock, advisory o applytransaction.

No

pg_locks.locktype

is_fastpath

Il valore è vero se il blocco è stato preso con il percorso veloce e falso se preso dalla tabella di blocco principale.

No

pg_locks.fastpath

Per ulteriori informazioni sui valori nelle pg_locks viste pg_stat_activity e, vedere i seguenti argomenti nella documentazione di PostgreSQL.

PrivacyCondizioni del sitoPreferenze cookie
© 2025, Amazon Web Services, Inc. o società affiliate. Tutti i diritti riservati.