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à.
Scelta della classe di istanza DB giusta
La classe di istanza corretta dipende dal modo in cui le query su tabelle esterne utilizzano memoria, archiviazione e CPU. Per informazioni dettagliate su ciascuna di queste risorse, consultaGestione delle risorse.
-
Memoria: una query su una tabella esterna conserva i dati di lavoro (ordinamenti, aggregazioni e tabelle hash per i join) in memoria, limitati dall'
aurora_analytics.query_memimpostazione (in breve).query_memIl valore predefinito varia in base alla dimensionequery_memdell'istanza, quindi un'istanza più grande fornisce automaticamente più memoria a ciascuna query. Quando una query supera il limitequery_mem, viene trasferita nella memoria locale, che è più lenta. Per ulteriori informazioni, consulta Ottimizzazione di query_mem per il carico di lavoro. -
Concorrenza: ogni query simultanea su una tabella esterna alloca memoria fino a
query_mem, ma l'utilizzo effettivo dipende dalla query e le query semplici potrebbero utilizzarne molta meno. Se si esegue la dimensione in base alla concorrenza, si consiglia di calcolare il budget per la memoria di picco anziché presupporre che ogni query utilizzi la memoria completa.query_memPer ulteriori informazioni, consulta Dimensionamento della concorrenza. -
Caching e spilling: la cache su disco per i dati di Amazon S3 e i file temporanei generati dalle query utilizzano entrambi lo storage locale dell'istanza. L'NVMe locale (disponibile su istanze di tipo d come
db.r8gd) è più veloce di Amazon EBS per entrambi, quindi scegli una classe con storage NVMe locale per carichi di lavoro di produzione che eseguono query su tabelle esterne. -
Isolamento del carico di lavoro: le query su tabelle esterne competono con il resto del traffico dell'istanza per quanto riguarda CPU e memoria. Per i carichi di lavoro che richiedono numerose query su tabelle esterne, eseguili invece su un lettore dedicato. Per ulteriori informazioni, consulta Utilizzo di un'istanza di lettura dedicata per l'analisi.
Inizia con una lezione adatta al tuo carico di lavoro e poi adattati, usando questi segnali.
-
L'aumento
AuroraAnalyticsMemoryUsagesignifica che la pressione complessiva della memoria sta aumentando. Passa a una classe di istanze più ampia o inferiorequery_memper lasciare spazio alla concorrenza. -
L'aumento
AuroraAnalyticsDiskSpillSizesignifica che le singole query sono in eccessoquery_meme si riversano nell'archiviazione locale. Ingrandisci o aumentaquery_memper dare più spazio a ogni interrogazione. -
Un calo
AuroraAnalyticsCacheHitRatiosignifica che una parte maggiore dei tuoi dati di lavoro viene riletta da Amazon S3. Una classe di istanze più grande ne memorizza una maggiore quantità nella cache locale. -
Una CPU elevata durante l'interrogazione di tabelle esterne significa che le query richiedono più vCPU.
Per gestire più query simultanee, esegui la scalabilità per avere più spazio di memoria o aggiungi un lettore per distribuire il carico.
Per queste metriche e su come monitorarle, consulta. Monitoraggio e risoluzione dei problemi
Quando usare le istanze EBS-only
Le istanze senza storage NVMe locale (come db.r8g e) db.r8i utilizzano Amazon EBS per la memorizzazione nella cache. Usali per quanto segue.
-
Carichi di lavoro più sensibili ai costi che alle prestazioni.
-
Query su tabelle esterne leggere o ad hoc.
-
Ambienti di sviluppo e test.