Seleziona le tue preferenze relative ai cookie

Utilizziamo cookie essenziali e strumenti simili necessari per fornire il nostro sito e i nostri servizi. Utilizziamo i cookie prestazionali per raccogliere statistiche anonime in modo da poter capire come i clienti utilizzano il nostro sito e apportare miglioramenti. I cookie essenziali non possono essere disattivati, ma puoi fare clic su \"Personalizza\" o \"Rifiuta\" per rifiutare i cookie prestazionali.

Se sei d'accordo, AWS e le terze parti approvate utilizzeranno i cookie anche per fornire utili funzionalità del sito, ricordare le tue preferenze e visualizzare contenuti pertinenti, inclusa la pubblicità pertinente. Per continuare senza accettare questi cookie, fai clic su \"Continua\" o \"Rifiuta\". Per effettuare scelte più dettagliate o saperne di più, fai clic su \"Personalizza\".

DAX: Come funziona

Modalità Focus
DAX: Come funziona - Amazon DynamoDB

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

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

Amazon DynamoDB Accelerator DAX () è progettato per funzionare all'interno di un ambiente Amazon Virtual Private Cloud (Amazon). VPC Il VPC servizio Amazon definisce una rete virtuale che assomiglia molto a un data center tradizionale. Con aVPC, hai il controllo sull'intervallo di indirizzi IP, sulle sottoreti, sulle tabelle di routing, sui gateway di rete e sulle impostazioni di sicurezza. Puoi avviare un DAX cluster nella tua rete virtuale e controllare l'accesso al cluster utilizzando i gruppi di VPC sicurezza di Amazon.

Nota

Se hai creato il tuo AWS account dopo il 4 dicembre 2013, hai già un account predefinito VPC in ogni AWS regione. VPCÈ pronto per l'uso immediato, senza dover eseguire alcuna procedura di configurazione aggiuntiva.

Per ulteriori informazioni, consulta la sezione Sottoreti predefinite VPC e predefinite nella Amazon VPC User Guide.

Il seguente diagramma mostra una panoramica di alto livello di DAX.

Diagramma del flusso di lavoro che mostra l'interazione tra applicazione, DAX client e DAX cluster in un. VPC

Per creare un cluster DAX usi la AWS Management Console. Se non diversamente specificato, il DAX cluster viene eseguito con i valori predefinitiVPC. Per eseguire l'applicazione, è necessario avviare un'EC2istanza Amazon in AmazonVPC. Quindi distribuisci l'applicazione (con il DAX client) sull'EC2istanza.

In fase di esecuzione, il DAX client indirizza tutte le richieste API DynamoDB dell'applicazione al cluster. DAX Se DAX è in grado di elaborare direttamente una di queste API richieste, lo fa. In caso contrario, passerà la richiesta a DynamoDB.

Infine, il cluster DAX restituisce i risultati alla tua applicazione.

Come DAX elabora le richieste

Un cluster DAX è costituito da uno o più nodi. Ogni nodo esegue la propria istanza del software di cache DAX. Uno dei nodi funge da nodo principale per il cluster. I nodi aggiuntivi (se presenti) servono da repliche di lettura. Per ulteriori informazioni, consulta Nodi.

La tua applicazione può accedere a DAX specificando l'endpoint per il cluster DAX. Il software client DAX funziona con l'endpoint del cluster per eseguire l'instradamento e il bilanciamento del carico intelligente.

Operazioni di lettura

DAXpuò rispondere alle seguenti API chiamate:

  • GetItem

  • BatchGetItem

  • Query

  • Scan

Se la richiesta specifica letture consistenti finali (comportamento predefinito), cerca di leggere l'item da DAX:

  • Se l'elemento DAX è disponibile (un hit nella cache), DAX restituisce l'elemento all'applicazione senza accedere a DynamoDB.

  • Se l'elemento DAX non è disponibile (una cache mancante), DAX passa la richiesta a DynamoDB. Quando riceve la risposta da DynamoDBDAX, restituisce i risultati all'applicazione. e li scrive nella cache del nodo primario.

Nota

Se ci sono delle repliche di lettura nel cluster, DAX mantiene automaticamente le repliche sincronizzate con il nodo primario. Per ulteriori informazioni, consulta Cluster.

Se la richiesta specifica letture fortemente coerenti, DAX passa la richiesta a DynamoDB. I risultati di DynamoDB non vengono memorizzati nella cache. DAX ma vengono restituiti all'applicazione.

Operazioni di scrittura

Le seguenti DAX API operazioni sono considerate «scritture»:

  • BatchWriteItem

  • UpdateItem

  • DeleteItem

  • PutItem

Con queste operazioni, i dati vengono prima scritti nella tabella DynamoDB e quindi nel cluster. DAX L'operazione ha esito positivo solo se i dati vengono scritti sia sulla tabella che in DAX.

Altre operazioni

DAXnon riconosce alcuna operazione di DynamoDB per la gestione delle tabelle (ad esempioUpdateTable, e CreateTable così via). Se l'applicazione deve eseguire queste operazioni, deve accedere direttamente a DynamoDB anziché utilizzarla. DAX

Per informazioni dettagliate sulla coerenza DAX di DynamoDB, vedere. DAXe modelli di coerenza DynamoDB

Per informazioni sul funzionamento delle transazioni in DAX, consulta Utilizzo delle transazioni in APIs DynamoDB Accelerator (DAX).

Limitazione del tasso di richiesta

Se il numero di richieste inviate DAX supera la capacità di un nodo, DAX limita la velocità con cui il nodo accetta richieste aggiuntive restituendo un. ThrottlingException DAXvaluta continuamente l'CPUutilizzo per determinare il volume di richieste che può elaborare mantenendo uno stato integro del cluster.

Puoi monitorare la ThrottledRequestCount metrica DAX pubblicata su Amazon. CloudWatch Se queste eccezioni vengono visualizzate regolarmente, è consigliabile prendere in considerazione la possibilità di aumentare la dimensione del cluster.

Cache degli elementi

DAX gestisce una cache degli item per memorizzare i risultati delle operazioni GetItem e BatchGetItem. Gli elementi nella cache rappresentano i dati a consistenza finale da DynamoDB e sono archiviati in base ai rispettivi valori delle chiavi primarie.

Quando un'applicazione invia una richiesta GetItem o BatchGetItem, DAX cerca di leggere gli item direttamente dalla cache degli item utilizzando i valori delle chiavi specificati. Se gli item vengono trovati (hit della cache), DAX li restituisce immediatamente all'applicazione. Se gli elementi non vengono trovati (cache mancante), DAX invia la richiesta a DynamoDB. DynamoDB elabora le richieste utilizzando letture eventualmente coerenti e restituisce gli elementi a. DAX DAXli memorizza nella cache degli elementi e poi li restituisce all'applicazione.

La cache degli elementi ha un'impostazione Time to Live (TTL), che per impostazione predefinita è di 5 minuti. DAXassegna un timestamp a ogni elemento che scrive nella cache degli elementi. Un elemento scade se è rimasto nella cache più a lungo dell'impostazione. TTL Se si invia una GetItem richiesta su un elemento scaduto, questa operazione viene considerata una perdita nella cache e DAX invia la GetItem richiesta a DynamoDB.

Nota

È possibile specificare l'TTLimpostazione per la cache degli elementi quando si crea un nuovo cluster. DAX Per ulteriori informazioni, consulta Gestione dei cluster DAX .

DAXmantiene anche un elenco degli elementi utilizzati meno di recente (LRU) per la cache degli elementi. L'LRUelenco tiene traccia della data in cui un elemento è stato scritto per la prima volta nella cache e dell'ultima lettura dalla cache. Se la cache degli item si riempie, DAX elimina gli item più vecchi (anche se non sono ancora scaduti) per fare spazio a nuovi item. L'LRUalgoritmo è sempre abilitato per la cache degli elementi e non è configurabile dall'utente.

Se si specifica zero come TTL impostazione della cache degli elementi, gli elementi nella cache degli elementi verranno aggiornati solo a seguito di un'operazione di rimozione o di «LRUscrittura».

Per informazioni dettagliate sulla coerenza della cache degli item in DAX, consulta DAXcomportamento della cache degli elementi.

Cache delle query

DAX gestisce anche una cache delle query per memorizzare i risultati delle operazioni Query e Scan. Gli elementi in questa cache rappresentano set di risultati da query e scansioni delle tabelle DynamoDB. Questi set di risultati sono memorizzati in base ai rispettivi valori dei parametri.

Quando un'applicazione invia una richiesta Query o Scan, DAX cerca di leggere un set di risultati corrispondente dalla cache delle query utilizzando i valori dei parametri specificati. Se il set di risultati viene trovato (hit della cache), DAX lo restituisce immediatamente all'applicazione. Se il set di risultati non viene trovato (cache mancante), DAX invia la richiesta a DynamoDB. DynamoDB elabora le richieste utilizzando letture eventualmente coerenti e restituisce il set di risultati su. DAX DAXlo memorizza nella cache delle query e poi lo restituisce all'applicazione.

Nota

È possibile specificare l'TTLimpostazione per la cache delle query quando si crea un nuovo DAX cluster. Per ulteriori informazioni, consulta Gestione dei cluster DAX .

DAXmantiene anche un LRU elenco per la cache delle query. L'elenco monitora quando un set di risultati è stato scritto per la prima volta nella cache e quando il risultato è stato letto l'ultima volta dalla cache. Se la cache delle query si riempie, DAX elimina i set di risultati più vecchi (anche se non sono ancora scaduti) per fare spazio a nuovi set di risultati. L'LRUalgoritmo è sempre abilitato per la cache delle query e non è configurabile dall'utente.

Se si specifica zero come TTL impostazione della cache delle query, la risposta alla query non verrà memorizzata nella cache.

Per informazioni dettagliate sulla coerenza della cache delle query in DAX, consulta DAXcomportamento della cache delle query.

PrivacyCondizioni del sitoPreferenze cookie
© 2025, Amazon Web Services, Inc. o società affiliate. Tutti i diritti riservati.