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à.
Prestazioni di scrittura migliorate con Scritture ottimizzate per Amazon RDS per MySQL
Puoi migliorare le prestazioni delle transazioni di scrittura con Scritture ottimizzate per RDS per MySQL. Quando il database RDS per MySQL utilizza RDS Optimized Writes, può raggiungere una velocità di trasmissione effettiva delle transazioni di scrittura fino a due volte superiore.
Argomenti
Panoramica di RDS Optimized Writes
Quando attivi Scritture ottimizzate per RDS, i database RDS per MySQL scrivono solo una volta, quando trasferiscono i dati nell'archiviazione durevole senza la necessità del buffer di doppia scrittura. I database continuano a fornire le protezioni delle proprietà ACID per le transazioni di database affidabili, insieme alle prestazioni migliorate.
I database relazionali, come MySQL, forniscono le proprietà ACID di atomicità, consistenza, isolamento e durabilità per le transazioni di database affidabili. Per fornire queste proprietà, MySQL utilizza un'area di archiviazione di dati chiamata buffer di doppia scrittura che impedisce gli errori di scrittura parziale della pagina. Questi errori si verificano nel caso di un guasto hardware mentre il database sta aggiornando una pagina, ad esempio in caso di interruzione dell'alimentazione. Un database MySQL può rilevare le scritture parziali della pagina e recuperarle con una copia della pagina nel buffer di doppia scrittura. Sebbene questa tecnica fornisca protezione, comporta anche operazioni di scrittura aggiuntive. Per ulteriori informazioni sul buffer di doppia scrittura MySQL, consulta Doublewrite Buffer
Quando attivi RDS Optimized Writes, i database RDS per MySQL scrivono una sola volta, quando trasferiscono i dati nell'archiviazione durevole senza usare il buffer di doppia scrittura. RDS Optimized Writes è utile se esegui carichi di lavoro intensivi in scrittura sui database RDS per MySQL. Esempi di database con carichi di lavoro intensivi in scrittura includono quelli che supportano pagamenti digitali, trading finanziario e applicazioni di gioco.
Questi database vengono eseguiti in classi di istanza database che utilizzano AWS Nitro System. Grazie alla configurazione hardware di questi sistemi, il database può scrivere pagine da 16 KiB direttamente su file di dati in modo affidabile e durevole in un solo passaggio. AWS Nitro System permette di usare RDS Optimized Writes.
Puoi impostare il nuovo parametro di database rds.optimized_writes per controllare la funzionalità RDS Optimized Writes per i database RDS per MySQL. Accedi a questo parametro nei gruppi di parametri database di RDS per MySQL versione 8.0 e RDS per MySQL versione 8.4. Imposta il parametro su uno dei seguenti valori:
-
AUTO- Attiva RDS Optimized Writes se la funzionalità è supportata dal database. In caso contrario, disattiva RDS Optimized Writes. Questa è l'impostazione di default. -
OFF- Disattiva RDS Optimized Writes anche la funzionalità è supportata dal database.
Se disponi di un database esistente con una versione del motore, una classe di istanza database e/o un formato del file system che non supporta Scritture ottimizzate per RDS, puoi abilitare la funzionalità creando un'implementazione blu/verde. Per ulteriori informazioni, consulta Abilitazione delle scritture ottimizzate per RDS in un database esistente.
Se si esegue la migrazione di un database RDS per MySQL configurato per utilizzare RDS Optimized Writes in una classe di istanza database che non supporta la funzionalità, RDS disattiva automaticamente RDS Optimized Writes per il database.
Quando la funzionalità RDS Optimized Writes è disattivata, il database utilizza il buffer di doppia scrittura MySQL.
Per determinare se un database RDS per MySQL utilizza RDS Optimized Writes, osserva il valore corrente del parametro innodb_doublewrite per il database. Se il database utilizza RDS Optimized Writes, questo parametro è impostato su FALSE (0).
Utilizzo di RDS Optimized Writes
È possibile attivare RDS Optimized Writes quando si crea un database RDS per MySQL con la console RDS, AWS CLI o l'API RDS. La funzionalità RDS Optimized Writes viene attivata automaticamente quando si verificano entrambe le seguenti condizioni durante la creazione del database:
-
Si specificano una versione del motore di database e una classe di istanza database che supportano RDS Optimized Writes.
-
RDS Optimized Writes è supportato per RDS per MySQL versione 8.0.30 e successive. Per ulteriori informazioni sulle versioni di RDS per MySQL, consulta Versioni di MySQL in Amazon RDS.
-
La funzionalità RDS Optimized Writes è supportata per i database RDS per MySQL che utilizzano le seguenti classi di istanza database:
-
db.m7i
-
db.m7g
-
db.m6g
-
db.m6gd
-
db.m6i
-
db.m5
-
db.m5d
-
db.r7i
-
db.r7g
-
db.r6g
-
db.r6gd
-
db.r6i
-
db.r5
-
db.r5b
-
db.r5d
-
db.x2idn
-
db.x2iedn
Per informazioni sulle classi di istanza database, consulta Classi di istanze database .
La disponibilità della classe di istanze DB è diversa nelle varie Regioni AWS. Per determinare se una classe di istanza DB è supportata in una Regione AWS specifica, consulta Determinazione del supporto delle classi di istanza database nelle Regioni AWS.
Per aggiornare il database a una classe di istanza database che supporti Scritture ottimizzate per RDS, puoi creare un'implementazione blu/verde. Per ulteriori informazioni, consulta Abilitazione delle scritture ottimizzate per RDS in un database esistente.
-
-
-
Nel gruppo di parametri associato al database, il parametro
rds.optimized_writesè impostato suAUTO. Nei gruppi di parametri predefiniti, questo parametro è sempre impostato suAUTO.
Se vuoi utilizzare una versione del motore di database e una classe di istanza database che supportino Scritture ottimizzate per Amazon RDS, senza usare questa funzionalità, specifica un gruppo di parametri personalizzato durante la creazione del database. In questo gruppo di parametri, imposta il parametro rds.optimized_writes su OFF. Se si desidera che il database utilizzi RDS Optimized Writes in un secondo momento, è possibile impostare il parametro su AUTO per attivarlo. Per informazioni sull'utilizzo dei gruppi di parametri personalizzati e sull'impostazione dei parametri, consulta Gruppi di parametri per Amazon RDS.
Per informazioni sulla creazione di un'istanza database, consulta Creazione di un'istanza database Amazon RDS.
Quando usi la console RDS per creare un database RDS per MySQL, puoi filtrare le versioni del motore di database e le classi di istanza database che supportano RDS Optimized Writes. Dopo aver attivato i filtri, puoi scegliere tra le versioni del motore di database e le classi di istanza database disponibili.
Per scegliere una versione del motore di database che supporti RDS Optimized Writes, filtra le versioni del motore di database RDS per MySQL che supportano la funzionalità in Engine version (Versione del motore), quindi scegli una versione.
Nella sezione Instance configuration (Configurazione dell'istanza), filtra le classi di istanza database che supportano RDS Optimized Writes, quindi scegli una classe di istanza database.
Dopo aver effettuato queste selezioni, puoi scegliere altre impostazioni che soddisfano i tuoi requisiti e completare la creazione del database RDS per MySQL con la console.
Per creare un’istanza database utilizzando la AWS CLI, esegui il comando create-db-instance. Assicurati che i valori --engine-version e --db-instance-class supportino RDS Optimized Writes. Inoltre, assicurati che il gruppo di parametri associato all'istanza database abbia il parametro rds.optimized_writes impostato su AUTO. Questo esempio associa il gruppo di parametri predefinito all'istanza database.
Esempio Creazione di un'istanza database che utilizza RDS Optimized Writes
Per Linux, macOS o Unix:
aws rds create-db-instance \ --db-instance-identifiermydbinstance\ --engine mysql \ --engine-version8.0.30\ --db-instance-classdb.r5b.large\ --manage-master-user-password \ --master-usernameadmin\ --allocated-storage200
Per Windows:
aws rds create-db-instance ^ --db-instance-identifiermydbinstance^ --engine mysql ^ --engine-version8.0.30^ --db-instance-classdb.r5b.large^ --manage-master-user-password ^ --master-usernameadmin^ --allocated-storage200
È possibile creare un'istanza database utilizzando l'operazione CreateDBInstance. Quando utilizzi questa operazione, assicurati che i valori EngineVersion e DBInstanceClass supportino RDS Optimized Writes. Inoltre, assicurati che il gruppo di parametri associato all'istanza database abbia il parametro rds.optimized_writes impostato su AUTO.
Abilitazione delle scritture ottimizzate per RDS in un database esistente
Per modificare un database RDS per MySQL esistente per attivare Scritture ottimizzate per RDS, il database deve essere stato creato con una versione del motore di database e una classe di istanza database supportate. Inoltre, il database deve essere stato creato dopo il rilascio di Scritture ottimizzate per RDS del 27 novembre 2022, poiché la configurazione del file system sottostante richiesta è incompatibile con quella dei database creati prima del rilascio. Se queste condizioni sono soddisfatte, è possibile attivare Scritture ottimizzate per RDS impostando il parametro rds.optimized_writes su AUTO.
Se il database non è stato creato con una versione del motore, una classe di istanza o una configurazione del file system supportate, puoi utilizzare le implementazioni blu/verde di RDS per migrare a una configurazione supportata. Durante la creazione dell'implementazione blu/verde, esegui le seguenti operazioni:
-
Seleziona Abilita le scritture ottimizzate sul database verde, quindi specifica una versione del motore e una classe di istanza database che supportano e scritture ottimizzate RDS. Per l'elenco delle versioni di motore e delle classi di istanza supportate, consulta Utilizzo di RDS Optimized Writes.
-
In Archiviazione scegli Aggiorna la configurazione del file system di archiviazione. Questa opzione aggiorna il database a una configurazione del file system sottostante compatibile.
Se quando crei l'implementazione blu/verde il parametro rds.optimized_writes è impostato su AUTO, Scritture ottimizzate per RDS viene abilitato automaticamente nell'ambiente verde. Quindi puoi eseguire lo switchover all'implementazione blu/verde, che rende l'ambiente verde il nuovo ambiente di produzione.
Per ulteriori informazioni, consulta Creazione di una blue/green distribuzione in Amazon RDS .
Limitazioni per RDS Optimized Writes
Quando si ripristina un database RDS per MySQL da uno snapshot, è possibile attivare Scritture ottimizzate per RDS per il database solo se si verificano tutte le seguenti condizioni:
-
Lo snapshot è stato creato da un database che supporta RDS Optimized Writes.
-
Lo snapshot è stato creato da un database creato dopo il rilascio della funzionalità Scritture ottimizzate per Amazon RDS.
-
Lo snapshot è stato ripristinato in un database che supporta RDS Optimized Writes.
-
Il database ripristinato è associato a un gruppo di parametri con il parametro
rds.optimized_writesimpostato suAUTO.