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à.
Migliore gestione della memoria in Aurora PostgreSQL
Aurora PostgreSQL ora include funzionalità avanzate di gestione della memoria per ottimizzare le prestazioni e la resilienza del database con carichi di lavoro diversi. Questi miglioramenti aiutano Aurora PostgreSQL a mantenere disponibilità e reattività costanti, anche durante i periodi di elevata richiesta di memoria.
Questa funzionalità è disponibile e abilitata per impostazione predefinita nelle seguenti versioni di Aurora PostgreSQL per le istanze con provisioning:
-
15.3 e tutte le versioni secondarie successive
-
14.8 e versioni secondarie successive
-
13.11 e versioni secondarie successive
-
12.15 e versioni secondarie successive
-
11.20 e versioni secondarie successive
Questa funzionalità è disponibile e abilitata per impostazione predefinita nelle seguenti versioni di Aurora PostgreSQL per le istanze Aurora Serverless:
-
16.3 e tutte le versioni secondarie successive
-
15.7 e tutte le versioni secondarie successive
-
14.12 e versioni secondarie successive
-
13.15 e versioni secondarie successive
Quando i carichi di lavoro dei clienti utilizzano tutta la memoria libera disponibile, il sistema operativo può riavviare il database per proteggere le risorse, con conseguente indisponibilità temporanea. I nuovi miglioramenti alla gestione della memoria in Aurora PostgreSQL annullano in modo proattivo determinate transazioni quando il sistema subisce un’elevata pressione della memoria, contribuendo a mantenere la stabilità del database.
Le funzionalità principali di una migliore gestione della memoria sono le seguenti:
-
Annullamento delle transazioni del database che richiedono più memoria quando il sistema sta raggiungendo un carico critico della memoria.
-
Si dice che il sistema sia sottoposto a un carico critico della memoria quando esaurisce tutta la memoria fisica e sta per esaurire lo spazio di scambio. In queste circostanze, qualsiasi transazione che richiede memoria verrà annullata nel tentativo di ridurre immediatamente il carico della memoria nell'istanza database.
-
Le utilità di avvio di PostgreSQL essenziali e i worker in background come i worker autovacuum sono sempre protetti.
Gestione dei parametri di gestione della memoria
Per attivare la gestione della memoria
Questa funzionalità è attivata per impostazione predefinita. Viene visualizzato un messaggio di errore, come quello illustrato nell'esempio seguente, quando una transazione viene annullata a causa di memoria insufficiente.
ERROR: out of memory Detail: Failed on request of size 16777216.
Per disattivare la gestione della memoria
Per disattivare questa funzionalità, connettersi al cluster di database Aurora PostgreSQL con psql e utilizzare l’istruzione SET per i valori dei parametri come indicato di seguito.
Nota
È consigliabile mantenere abilitata la gestione della memoria. Questo aiuta a prevenire potenziali errori di memoria insufficiente che possono portare al riavvio del database indotto dal carico di lavoro a causa dell’esaurimento della memoria.
La tabella seguente mostra come disattivare la funzionalità di gestione della memoria per le diverse versioni di Aurora PostgreSQL:
| Versioni di Aurora PostgreSQL | Parametro | Default | Comando per disattivare la gestione della memoria a livello di sessione |
|---|---|---|---|
11.20, 11.21, 12.15, 12.16, 13.11, 13.12, 14.8, 14.9, 15.3, 15.4 |
|
|
|
12.17, 13.13, 14.10, 15.5 e versioni successive |
|
|
|
Nota
Il parametro rds.memory_allocation_guard è obsoleto in Aurora PostgreSQL 12.17, 13.13, 14.10, 15.5 e versioni successive.
Impostando i valori di questi parametri nel gruppo di parametri del cluster di database si impedisce l’annullamento delle query. Per ulteriori informazioni sui gruppi di parametri del cluster di database, consulta Gruppi di parametri per Amazon Aurora.
Limitazione
-
Questa funzionalità non è supportata nella classe di istanze db.t3.medium.