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à.
Identifica le risorse inutilizzate in DynamoDB
In questa sezione viene fornita una panoramica su come valutare regolarmente le risorse inutilizzate. Man mano che i requisiti delle tue applicazioni si evolvono, dovresti assicurarti che nessuna risorsa resti inutilizzata per evitare costi Amazon DynamoDB non necessari. Le procedure descritte di seguito utilizzeranno i CloudWatch parametri di Amazon per identificare le risorse inutilizzate e ti aiuteranno a identificare e ad agire su tali risorse per ridurre i costi.
Puoi monitorare DynamoDB CloudWatch utilizzando, che raccoglie ed elabora i dati grezzi da DynamoDB in metriche leggibili quasi in tempo reale. Queste statistiche vengono conservate per un determinato periodo di tempo, così da consentire l'accesso a informazioni cronologiche per comprendere meglio l'utilizzo. Per impostazione predefinita, i dati delle metriche DynamoDB vengono inviati automaticamente a. CloudWatch Per ulteriori informazioni, consulta What is Amazon CloudWatch? e conservazione dei parametri nella Amazon CloudWatch User Guide.
Argomenti
- Come identificare le risorse inutilizzate
- Identificazione delle risorse non utilizzate della tabella
- Pulizia delle risorse non utilizzate della tabella
- Identificazione delle risorse non utilizzate GSI
- Pulizia delle risorse inutilizzate GSI
- Pulizia delle tabelle globali inutilizzate
- Eliminazione dei backup o dei ripristini inutilizzati () point-in-time PITR
Come identificare le risorse inutilizzate
Per identificare tabelle o indici non utilizzati, esamineremo le seguenti CloudWatch metriche per un periodo di 30 giorni per capire se ci sono letture o scritture attive sulla tabella o letture sugli indici secondari globali (): GSIs
ConsumedReadCapacityUnits
Il numero di unità di capacità di lettura utilizzate nel periodo di tempo specificato, per permettere di tenere traccia di quanta capacità viene utilizzata. È possibile recuperare la capacità di lettura totale consumata per una tabella e tutti i relativi indici secondari globali o per un determinato indice secondario globale.
ConsumedWriteCapacityUnits
Il numero di unità di capacità di scrittura utilizzate nel periodo di tempo specificato, per permettere di tenere traccia di quanta capacità viene utilizzata. È possibile recuperare la capacità di scrittura totale consumata per una tabella e tutti i relativi indici secondari globali o per un determinato indice secondario globale.
Identificazione delle risorse non utilizzate della tabella
Amazon CloudWatch è un servizio di monitoraggio e osservabilità che fornisce le metriche delle tabelle DynamoDB che utilizzerai per identificare le risorse non utilizzate. CloudWatch le metriche possono essere visualizzate sia tramite. AWS Management Console AWS Command Line Interface
Pulizia delle risorse non utilizzate della tabella
Se sono state identificate risorse non utilizzate della tabella, è possibile ridurne i costi correnti nei seguenti modi.
Nota
Se hai identificato una tabella non utilizzata ma desideri comunque mantenerla disponibile nel caso in cui sia necessario accedervi in futuro, valuta la possibilità di passare alla modalità on demand. Altrimenti, puoi valutare l'idea di eseguire il backup e di eliminare completamente la tabella.
Modalità di capacità
DynamoDB addebita la lettura, la scrittura e l'archiviazione dei dati nelle tabelle DynamoDB.
DynamoDB ha due modalità di capacità, che includono opzioni di fatturazione specifiche per l'elaborazione delle letture e delle scritture sulle tabelle: on demand e con assegnazione. La modalità di capacità in lettura/scrittura controlla la modalità di addebito per il throughput di lettura e scrittura e di gestione della capacità.
Per le tabelle in modalità on demand, non è necessario specificare la velocità effettiva di lettura e scrittura che si prevede l'applicazione esegua. DynamoDB addebita le letture e le scritture eseguite dall'applicazione sulle tabelle in termini di unità di richiesta di lettura e unità di richiesta di scrittura. Se non vi è alcuna attività sulla tabella o sull'indice, non paghi la velocità di trasmissione effettiva, ma dovrai comunque sostenere un costo per l'archiviazione.
Classi di tabelle
DynamoDB offre due classi di tabelle progettate per aiutare a ottimizzare i costi. La classe di tabella DynamoDB Standard è quella predefinita ed è consigliata per la maggior parte dei carichi di lavoro. La classe di tabella DynamoDB Standard-Infrequent Access (DynamoDB Standard (accesso infrequente)) è ottimizzata per le tabelle in cui l'archiviazione è il costo principale.
Se non vi è alcuna attività sulla tabella o sull'indice, è probabile che il costo principale sia quello dell'archiviazione e cambiare classe di tabella offrirà un risparmio significativo.
Eliminazione delle tabelle
Se hai rilevato una tabella non utilizzata e desideri eliminarla, potresti voler prima effettuare un backup o un'esportazione dei dati.
I backup eseguiti tramite AWS Backup possono sfruttare lo storage a freddo su più livelli, riducendo ulteriormente i costi. Consulta la Utilizzo AWS Backup con DynamoDB documentazione per informazioni su come abilitare i backup tramite AWS Backup e la documentazione sulla gestione dei piani di backup per informazioni su come utilizzare il ciclo di vita per spostare il backup in cold storage.
In alternativa, puoi scegliere di esportare i dati della tabella in S3. Per fare ciò, consulta la documentazione relativa all'esportazione in Amazon S3. Una volta esportati i dati, se desideri sfruttare S3 Glacier Instant Retrieval, S3 Glacier Flexile Retrieval o S3 Glacier Deep Archive per ridurre ulteriormente i costi, consulta Gestione del ciclo di vita dell'archiviazione.
Dopo aver eseguito il backup della tabella, puoi scegliere di eliminarla tramite la AWS Management Console o tramite l' AWS Command Line Interface.
Identificazione delle risorse non utilizzate GSI
Le fasi per identificare un indice secondario globale non utilizzato sono simili a quelle per identificare una tabella non utilizzata. Poiché DynamoDB replica gli elementi scritti nella tabella di base nella GSI tabella se contengono l'attributo usato come GSI chiave di partizione, è probabile che una tabella GSI inutilizzata ConsumedWriteCapacityUnits
abbia comunque un valore superiore a 0 se la tabella di base è in uso. Di conseguenza, valuterai solo la ConsumedReadCapacityUnits
metrica per determinare se la tua è inutilizzata. GSI
Per visualizzare le GSI metriche tramite AWS AWS CLI, puoi utilizzare i seguenti comandi per valutare le letture delle tabelle:
aws cloudwatch get-metric-statistics --metric-name ConsumedReadCapacityUnits --start-time <start-time> --end-time <end- time> --period <period> --namespace AWS/DynamoDB --statistics Sum -- dimensions Name=TableName,Value=<table-name> Name=GlobalSecondaryIndexName,Value=<index-name>
Per evitare di identificare erroneamente una tabella come non utilizzata, consigliamo di valutare i parametri per un periodo più lungo. Scegli un intervallo appropriato di inizio e fine, ad esempio 30 giorni e un periodo appropriato, ad esempio 86400.
Nei dati restituiti, qualsiasi somma superiore a 0 indica che la tabella che stai valutando ha ricevuto traffico di lettura durante quel periodo.
Il risultato seguente mostra un traffico di lettura in GSI ricezione nel periodo valutato:
{ "Timestamp": "2022-08-17T21:20:00Z", "Sum": 36319167.0, "Unit": "Count" }, { "Timestamp": "2022-08-11T21:20:00Z", "Sum": 1869136.0, "Unit": "Count" },
Il risultato seguente mostra una GSI ricezione di traffico di lettura minimo nel periodo valutato:
{ "Timestamp": "2022-08-28T21:20:00Z", "Sum": 0.0, "Unit": "Count" }, { "Timestamp": "2022-08-15T21:20:00Z", "Sum": 2.0, "Unit": "Count" },
Il risultato seguente mostra una GSI ricezione di traffico in assenza di lettura nel periodo valutato:
{ "Timestamp": "2022-08-17T21:20:00Z", "Sum": 0.0, "Unit": "Count" }, { "Timestamp": "2022-08-11T21:20:00Z", "Sum": 0.0, "Unit": "Count" },
Pulizia delle risorse inutilizzate GSI
Se ne hai identificato uno inutilizzatoGSI, puoi scegliere di eliminarlo. Poiché tutti i dati presenti in a GSI sono presenti anche nella tabella di base, non è necessario un backup aggiuntivo prima di eliminare un. GSI Se in futuro GSI sarà nuovamente necessario, potrà essere aggiunto nuovamente alla tabella.
Se avete identificato un oggetto usato raramenteGSI, dovreste prendere in considerazione delle modifiche alla progettazione dell'applicazione che consentano di eliminarlo o ridurne i costi. Ad esempio, mentre le scansioni di DynamoDB devono essere utilizzate con parsimonia perché possono consumare grandi quantità di risorse di sistema, possono essere più convenienti di GSI una se il modello di accesso che supporta viene utilizzato molto raramente.
Inoltre, se GSI è necessario un modello di accesso poco frequente, si consiglia di proiettare un set di attributi più limitato. Sebbene ciò possa richiedere successive query sulla tabella di base per supportare i modelli di accesso poco frequenti, può potenzialmente offrire una riduzione significativa dei costi di archiviazione e scrittura.
Pulizia delle tabelle globali inutilizzate
Le tabelle globali di Amazon DynamoDB forniscono una soluzione completamente gestita per l'implementazione di un database multi-regione e multi-attivo, senza dover sviluppare e mantenere la propria soluzione di replica.
Le tabelle globali sono ideali per fornire un accesso a bassa latenza ai dati vicini agli utenti e una regione secondaria per il ripristino di emergenza.
Se l'opzione delle tabelle globali è abilitata per una risorsa allo scopo di fornire un accesso a bassa latenza ai dati, ma non fa parte della strategia di disaster recovery, verifica che entrambe le repliche servano attivamente il traffico di lettura valutandone le metriche. CloudWatch Se una replica non serve traffico di lettura, potrebbe trattarsi di una risorsa inutilizzata.
Se le tabelle globali fanno parte della strategia di ripristino di emergenza, è possibile che sia prevista una replica che non riceva traffico di lettura in uno schema attivo/in standby.
Eliminazione dei backup o dei ripristini inutilizzati () point-in-time PITR
DynamoDB offre due stili di backup. Point-in-timeil ripristino fornisce backup continui per 35 giorni per aiutarvi a proteggervi da scritture o eliminazioni accidentali, mentre il backup su richiesta consente la creazione di istantanee che possono essere salvate a lungo termine. Entrambi i tipi di backup hanno dei costi associati.
Consulta la documentazione di Backup e ripristino per DynamoDB e oint-in-time Backup P per DynamoDB per determinare se nelle tabelle sono abilitati i backup che potrebbero non essere più necessari.