View a markdown version of this page

Eventi di attesa Limitless Database - Amazon Aurora
IO:TwophaseFilePoolWrite evento di attesaIO:TwophaseFilePoolRead evento di attesaAuroraLimitless:Connect evento di attesaAuroraLimitless:AsyncConnect evento di attesaAuroraLimitless:RemoteStatementSetup evento di attesaAuroraLimitless:RemoteDDLExecution evento di attesaAuroraLimitless:RemoteStatementExecution evento di attesaAuroraLimitless:FetchRemoteResults evento di attesaAuroraLimitless:AsyncGetInitialResponse evento di attesaAuroraLimitless:AsyncGetNextResponse evento di attesaAuroraLimitless:AbortedCommandCleanup evento di attesaAuroraLimitless:DistributedCommitPrepare evento di attesaAuroraLimitless:DistributedCommit evento di attesaAuroraLimitless:DistributedCommitPrepareThrottle evento di attesaAuroraLimitless:PreparedTransactionResolution evento di attesaAuroraLimitless:SendPreparedTransactionOutcome evento di attesaAuroraLimitless:CommitClockBarrier evento di attesaAuroraLimitless:SnapshotClockBarrier evento di attesaAuroraLimitless:ReaderSnapshotClockBarrier evento di attesaAuroraLimitless:GatherDistributedDeadlockGraph evento di attesaAuroraLimitless:DistributedDeadlockDetection evento di attesaAuroraLimitless:DistributedDeadlockAbort evento di attesaAuroraLimitless:GatherRemoteStats evento di attesaAuroraLimitless:GlobalSequenceRefresh evento di attesaAuroraLimitless:GlobalVacuumTimeExchange evento di attesaAuroraLimitless:DistributedTransactionMonitorGather evento di attesaAuroraLimitlessActivity:AdminTaskSchedulerMain evento di attesaAuroraLimitlessActivity:AdminTaskExecutorMain evento di attesaAuroraLimitlessActivity:AdminTaskMonitorMain evento di attesaAuroraLimitlessActivity:DatabaseCleanupMonitorMain evento di attesaAuroraLimitlessActivity:TopologyCleanupMonitorMain evento di attesaAuroraLimitlessActivity:ToplogyChangeMonitorMain evento di attesaAuroraLimitlessActivity:DistributedTransactionMonitorMain evento di attesaAuroraLimitlessActivity:GlobalVacuumMonitorMain evento di attesa

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

Eventi di attesa Limitless Database

I seguenti eventi di attesa si applicano ad Aurora PostgreSQL Limitless Database. È possibile monitorare questi eventi di attesa per identificare i colli di bottiglia nell’elaborazione del database Aurora PostgreSQL Limitless.

Argomenti

IO:TwophaseFilePoolWrite evento di attesa

In attesa della scrittura di un file di stato in due fasi all’interno del pool di file di stato in due fasi. Questo è un evento specifico di Aurora.

Cause

I processi che eseguono un PREPARED TRANSACTION comando, inclusi i partecipanti a una transazione distribuita con Limitless Database, devono mantenere lo stato della transazione in un file a due fasi. Aurora utilizza un pool di file per migliorare le prestazioni di questa operazione.

Azione

Si tratta di un' I/O operazione di scrittura sincrona e pertanto un'elevata latenza in questo evento ha cause simili IO:XactSync e può essere esaminata allo stesso modo. Se si utilizza Limitless Database, potrebbe essere necessario ridurre il numero di transazioni distribuite eseguite.

IO:TwophaseFilePoolRead evento di attesa

In attesa di una lettura di un file di stato in due fasi all’interno del pool di file di stato in due fasi.

Cause

I processi che eseguono un COMMIT PREPARED comando su una transazione preparata in precedenza, inclusi i partecipanti a una transazione distribuita da Limitless Database, potrebbero dover leggere lo stato della transazione precedentemente persistente da un file a due fasi. Aurora utilizza un pool di file per migliorare le prestazioni di questa operazione.

Azione

Questa è un' I/O operazione di lettura. Pertanto, un’elevata latenza in questo evento ha cause simili IO:DataFileRead e può essere studiata allo stesso modo. Se si utilizza Limitless Database, potrebbe essere necessario ridurre il numero di transazioni distribuite eseguite.

AuroraLimitless:Connect evento di attesa

Il processo è in attesa che venga stabilita una connessione a un altro nodo del cluster.

Cause

Vengono stabilite connessioni tra processi e nodi remoti per eseguire query, transazioni distribuite ed eseguire DDL.

Azione

Riduci il numero di connessioni simultanee al cluster o ottimizza l’uso delle query cross-shard.

AuroraLimitless:AsyncConnect evento di attesa

Questo evento è simile aConnect, ma rappresenta un processo in attesa che vengano stabilite connessioni parallele a un insieme di nodi.

Cause

La creazione di connessioni parallele viene eseguita più comunemente durante l’esecuzione di istruzioni DDL.

Azione

Riduci il numero di istruzioni DDL o combina più DDL nella stessa sessione per migliorare il riutilizzo della connessione.

AuroraLimitless:RemoteStatementSetup evento di attesa

Il processo è in attesa della configurazione dell’esecuzione remota delle query, ad esempio l’apertura, la chiusura del cursore o la creazione di istruzioni preparate.

Cause

Questo evento di attesa aumenta con il numero di scansioni su tabelle frammentate in cui l’istruzione non può essere ottimizzata per un singolo shard.

Azione

Ottimizza le query per ridurre il numero di operazioni di scansione o aumentare l’idoneità all’ottimizzazione a shard singolo.

AuroraLimitless:RemoteDDLExecution evento di attesa

Il processo è in attesa del completamento di un comando DDL remoto.

Cause

Quando si esegue un comando DDL su un gruppo di shard DB, è necessario distribuirlo ad altri router e nodi shard prima di confermare l’operazione. Alcune operazioni DDL possono essere eseguite a lungo, poiché i dati devono essere adattati alle modifiche dello schema.

Azione

Identifica i comandi DDL a esecuzione prolungata in modo da poterli ottimizzare.

AuroraLimitless:RemoteStatementExecution evento di attesa

Un processo è in attesa del completamento di un comando remoto.

Cause

Un comando SQL è in esecuzione su un nodo remoto. Questo evento verrà visualizzato frequentemente per le comunicazioni interne, ad esempio per i auto_analyze controlli del battito cardiaco.

Azione

Identifica i comandi a esecuzione prolungata utilizzando la vista limitless_stat_statements. In molti casi si tratta di un evento previsto, specialmente per i lavoratori in background o i processi interni, e non è necessaria alcuna azione.

AuroraLimitless:FetchRemoteResults evento di attesa

Un processo è in attesa di recuperare le righe da un nodo remoto.

Cause

Questo evento di attesa può aumentare quando si recupera un numero elevato di righe da una tabella remota, ad esempio una tabella frammentata o di riferimento.

Azione

Identifica le SELECT query non ottimizzate utilizzando la vista. limitless_stat_statements Ottimizza le query per recuperare solo i dati necessari. Non è possibile specificare anche il parametro rds_aurora.limitless_maximum_adaptive_fetch_size.

AuroraLimitless:AsyncGetInitialResponse evento di attesa

Il processo è in attesa di una risposta iniziale quando viene utilizzata la modalità pipeline nell’esecuzione delle query.

Cause

Ciò si verifica in genere durante l’esecuzione di router to shard per le query con posizionamento di dati a frammento singolo ed è una parte prevista della normale esecuzione.

Azione

Non è richiesta alcuna operazione aggiuntiva.

AuroraLimitless:AsyncGetNextResponse evento di attesa

Il processo è in attesa di risposte aggiuntive quando si utilizza la modalità pipeline nell’esecuzione delle query.

Cause

Ciò si verifica in genere durante l’esecuzione di router to shard per le query con posizionamento di dati a frammento singolo ed è una parte prevista della normale esecuzione.

Azione

Non è richiesta alcuna operazione aggiuntiva.

AuroraLimitless:AbortedCommandCleanup evento di attesa

Il processo è in attesa del risultato di una query di pulizia remota. Le query di pulizia vengono inviate ai nodi shard per riportarli allo stato appropriato al termine di una transazione distribuita.

Cause

La pulizia delle transazioni viene eseguita quando una transazione viene interrotta perché è stato rilevato un errore o perché un utente ha chiamato un comando ABORT esplicito o ha annullato la query in esecuzione.

Azione

Indagate sulla causa dell’annullamento della transazione.

AuroraLimitless:DistributedCommitPrepare evento di attesa

Il processo sta eseguendo una transazione distribuita ed è in attesa che tutti i partecipanti confermino il comando prepare.

Cause

Le transazioni che modificano più nodi devono eseguire un commit distribuito. Una lunga attesa DistributedCommitPrepare potrebbe essere causata da lunghe attese nell’IO:TwophaseFilePoolWriteevento sui nodi partecipanti.

Azione

Riduci il numero di transazioni che modificano i dati su più nodi. Analizza IO:TwophaseFilePoolWrite gli eventi in altri nodi del cluster.

AuroraLimitless:DistributedCommit evento di attesa

Il processo sta commettendo una transazione distribuita ed è in attesa che il partecipante principale confermi il comando di commit.

Cause

Le transazioni che modificano più nodi devono eseguire un commit distribuito. Una lunga attesa DistributedCommit potrebbe essere causata da lunghe attese nell’IO:XactSyncevento da parte del partecipante principale.

Azione

Riduci il numero di transazioni che modificano i dati su più nodi. Analizza IO:XactSync gli eventi in altri nodi del cluster.

AuroraLimitless:DistributedCommitPrepareThrottle evento di attesa

Il processo sta tentando di preparare una transazione distribuita e viene rallentato a causa delle transazioni preparate esistenti.

Cause

Le transazioni che modificano più nodi devono eseguire un commit distribuito. I partecipanti a queste transazioni devono eseguire un’operazione di preparazione come parte del protocollo di commit. Aurora limita il numero di preparazioni simultanee e, se questo limite viene superato, il processo attenderà l’evento. DistributedCommitPrepareThrottle

Azione

Riduci il numero di transazioni che modificano i dati su più nodi. Esamina IO:TwophaseFilePoolWrite gli eventi, poiché il prolungamento del tempo trascorso in tali eventi potrebbe causare l’accumulo di transazioni preparate esistenti, con conseguente limitazione (della larghezza di banda della rete) per i nuovi tentativi di preparazione.

AuroraLimitless:PreparedTransactionResolution evento di attesa

Il processo ha rilevato una tupla modificata da una transazione distribuita che si trova nello stato preparato. Il processo deve determinare se la transazione distribuita diventerà visibile nella relativa istantanea.

Cause

Le transazioni che modificano più nodi devono eseguire un commit distribuito che include una fase di preparazione. Un numero elevato di transazioni distribuite o una maggiore latenza sui commit distribuiti possono causare l’evento di PreparedTransactionResolution attesa in altri processi.

Azione

Riduci il numero di transazioni che modificano i dati su più nodi. Analizzate gli eventi relativi al commit distribuito, in quanto l’aumento del tempo trascorso in tali eventi potrebbe aumentare la latenza nel percorso di commit delle transazioni distribuite. Potresti anche voler esaminare i carichi di rete e della CPU.

AuroraLimitless:SendPreparedTransactionOutcome evento di attesa

Il processo viene eseguito su un nodo che coordina una transazione distribuita e un altro processo ha richiesto informazioni sullo stato di tale transazione oppure il processo ha eseguito una transazione distribuita e invia il risultato ai partecipanti.

Cause

I processi che riscontrano l’evento di PreparedTransactionResolution attesa interrogheranno il coordinatore della transazione. La risposta sul coordinatore della transazione verrà ricevuta SendPreparedTransactionOutcome.

Azione

Riduci il numero di transazioni che modificano i dati su più nodi. Analizza gli eventi IO:TwophaseFilePoolWrite e IO:TwophaseFilePoolRead gli eventi relativi al commit distribuito, poiché tali eventi potrebbero aumentare la latenza nel percorso di commit delle transazioni distribuite. Potresti anche voler esaminare i carichi di rete e della CPU.

AuroraLimitless:CommitClockBarrier evento di attesa

Il processo sta eseguendo una transazione e deve attendere per garantire che il tempo di commit assegnato sia garantito come passato per tutti i nodi del cluster.

Cause

La saturazione della CPU o della rete potrebbe causare un aumento della deriva del clock, con conseguente tempo impiegato in questo evento di attesa.

Azione

Analizza la saturazione della CPU o della rete nel cluster.

AuroraLimitless:SnapshotClockBarrier evento di attesa

Il processo ha ricevuto un’istantanea dell’ora da un altro nodo con un orologio del futuro ed è in attesa che il proprio orologio raggiunga quell’ora.

Cause

Ciò si verifica in genere dopo che il processo ha ricevuto i risultati da una funzione che è stata trasferita su uno shard e si è verificata una variazione dell’orologio tra i nodi. La saturazione della CPU o della rete potrebbe causare un aumento della deriva del clock, con conseguente tempo impiegato in questo evento di attesa.

Azione

Analizza la saturazione della CPU o della rete nel cluster.

AuroraLimitless:ReaderSnapshotClockBarrier evento di attesa

Questo evento si verifica sui nodi di lettura. Il processo è in attesa che il nodo di lettura riproduca il flusso di scrittura in modo che tutte le scritture avvenute prima dell’ora dell’istantanea del processo siano state applicate.

Cause

Un aumento del ritardo della replica di Aurora può causare un aumento del tempo di attesa in questo evento.

Azione

Indaga sul ritardo della replica di Aurora.

AuroraLimitless:GatherDistributedDeadlockGraph evento di attesa

Il processo sta comunicando con altri nodi per raccogliere grafici di blocco come parte del rilevamento distribuito dei deadlock.

Cause

Quando un processo è in attesa di un blocco, eseguirà un controllo di deadlock distribuito dopo aver atteso più di. rds_aurora.limitless_distributed_deadlock_timeout

Azione

Analizzate le cause della contrapposizione dei blocchi nella vostra applicazione e valutate la possibilità di ottimizzarla. rds_aurora.limitless_distributed_deadlock_timeout

AuroraLimitless:DistributedDeadlockDetection evento di attesa

Il processo sta comunicando con altri nodi per rilevare un deadlock distribuito.

Cause

Quando un processo è in attesa di un blocco, eseguirà un controllo di deadlock distribuito dopo aver atteso più di. rds_aurora.limitless_distributed_deadlock_timeout

Azione

Analizzate le cause della contrapposizione dei blocchi nella vostra applicazione e valutate la possibilità di ottimizzarla. rds_aurora.limitless_distributed_deadlock_timeout

AuroraLimitless:DistributedDeadlockAbort evento di attesa

Il processo sta comunicando con un altro nodo per interrompere una sessione scelta come vittima in un deadlock distribuito.

Cause

I modelli di applicazione danno luogo a situazioni di stallo distribuite.

Azione

Analizzate i modelli di applicazione che determinano situazioni di stallo distribuite.

AuroraLimitless:GatherRemoteStats evento di attesa

Il processo sta raccogliendo statistiche da altri nodi del cluster.

Cause

Il monitoraggio delle nostre attività, le query e le visualizzazioni, ad esempiolimitless_stat_activity, recupereranno le statistiche da altri nodi.

Azione

Non è richiesta alcuna operazione aggiuntiva.

AuroraLimitless:GlobalSequenceRefresh evento di attesa

Il processo sta generando un nuovo valore di sequenza e deve richiedere un nuovo blocco dalla sequenza globale.

Cause

In questo caso, un’elevata velocità di generazione del valore di sequenza può causare uno stallo se rds_aurora.limitless_sequence_chunk_size è insufficiente.

Azione

Si tratta di un evento normale. Se in questo caso il tempo a disposizione è eccessivo, valuta la possibilità di effettuare la sintonizzazione. rds_aurora.limitless_sequence_chunk_size Consulta la documentazione sulle sequenze in Limitless Database.

AuroraLimitless:GlobalVacuumTimeExchange evento di attesa

Il processo consiste nello scambio di dati istantanei per supportare il vuoto.

Cause

I nodi di Limitless Database scambiano i dati temporali più vecchi relativi alle istantanee attive con altri nodi per calcolare l’ora limite corretta per l’esecuzione sotto vuoto.

Azione

Non è richiesta alcuna operazione aggiuntiva.

AuroraLimitless:DistributedTransactionMonitorGather evento di attesa

Il processo sta raccogliendo i metadati delle transazioni da altri nodi per supportare la pulizia distribuita delle transazioni.

Cause

I nodi di Limitless Database scambiano i metadati delle transazioni con altri nodi per determinare quando è possibile eliminare lo stato della transazione distribuita.

Azione

Non è richiesta alcuna operazione aggiuntiva.

AuroraLimitlessActivity:AdminTaskSchedulerMain evento di attesa

Attesa nel ciclo principale del processo di pianificazione delle attività.

AuroraLimitlessActivity:AdminTaskExecutorMain evento di attesa

Attesa nel ciclo principale del processo di esecuzione delle attività.

AuroraLimitlessActivity:AdminTaskMonitorMain evento di attesa

Attesa nel ciclo principale del processo di monitoraggio delle attività.

AuroraLimitlessActivity:DatabaseCleanupMonitorMain evento di attesa

Attesa nel ciclo principale del processo di monitoraggio della pulizia del database.

AuroraLimitlessActivity:TopologyCleanupMonitorMain evento di attesa

Attesa nel ciclo principale del processo di monitoraggio della pulizia della topologia.

AuroraLimitlessActivity:ToplogyChangeMonitorMain evento di attesa

Attesa nel ciclo principale del processo di monitoraggio delle modifiche alla topologia.

AuroraLimitlessActivity:DistributedTransactionMonitorMain evento di attesa

Attesa nel ciclo principale del processo di monitoraggio distribuito delle transazioni.

AuroraLimitlessActivity:GlobalVacuumMonitorMain evento di attesa

Attesa nel ciclo principale del processo globale di monitoraggio del vuoto.