

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

# Best practice
<a name="best-practices"></a>

Questa sezione riassume i consigli oltre alle best practice discusse nelle sezioni precedenti (come la memorizzazione di elementi di dimensioni superiori a 400 KB in Amazon S3, l'uso di indici, la progettazione di tabelle singole e le transazioni).

## Utilizza il modello di accesso alla persistenza degli oggetti
<a name="use-obj-persistance"></a>

Come illustrato in precedenza in questa guida, Amazon DynamoDB fornisce tre modelli di accesso. L'[interfaccia di persistenza degli oggetti](access-patterns.md#object-persistence-interface) fornisce codice pulito. easy-to-maintain A meno che non sia necessario personalizzare o trasformare i valori delle proprietà del modello durante le operazioni di lettura/scrittura, si consiglia di utilizzare l'interfaccia di persistenza degli oggetti.

## Scegliete la modalità di fornitura della capacità corretta
<a name="choose-capacity-mode"></a>

Il provisioning della capacità su richiesta ridimensiona automaticamente le operazioni di lettura e scrittura man mano che i carichi di lavoro aumentano e diminuiscono. Ti consigliamo di utilizzare questa modalità se il carico di lavoro è imprevedibile. Il costo è in genere superiore alla modalità a capacità assegnata e viene addebitato su base. pay-as-you-use Si consiglia di utilizzare la modalità di capacità fornita quando il carico di lavoro è prevedibile ed è possibile prevedere i requisiti di capacità. Per ulteriori informazioni, consulta la sezione [Modelli di prezzo](overview.md#features-pricing) precedente di questa guida. 

## Usa la memorizzazione nella cache
<a name="use-caching"></a>

Si consiglia di utilizzare la memorizzazione nella cache quando si lavora con DynamoDB per ridurre i costi associati a ciascuna operazione di lettura/scrittura. Utilizzate la logica di invalidazione appropriata per rimuovere gli elementi dalla cache quando i dati memorizzati nella cache diventano obsoleti. Identifica gli endpoint utilizzati più di frequente per implementare la memorizzazione nella cache.

## Utilizza le interrogazioni anziché le scansioni
<a name="use-queries"></a>

Evita il più possibile le scansioni di DynamoDB. Una query DynamoDB è più efficiente e meno costosa di un'operazione di scansione. Una query filtra gli elementi in base ai valori della chiave di partizione (PK) e della chiave di ordinamento (SK), mentre una scansione deve leggere tutti i record per filtrare gli elementi in base ai parametri specificati. I prezzi di DynamoDB si basano sul volume delle operazioni di lettura/scrittura dei dati, quindi le scansioni hanno un costo maggiore rispetto alle query. Le interrogazioni sono inoltre più veloci, il che, in ultima analisi, migliora le prestazioni dell'applicazione.

## Convalida l'integrità dei dati
<a name="validate-data-integrity"></a>

DynamoDB è un database NoSQL, quindi non conserva dati relazionali né include vincoli di integrità dei dati. Richiede che ogni elemento abbia solo una combinazione unica di chiave primaria e chiave di ordinamento. Per garantire l'integrità dei dati tra gli elementi correlati nella tabella DynamoDB, consigliamo di eseguire convalide rigorose a livello applicativo o aziendale del sistema. 