Java e DAX - 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à.

Java e DAX

DAXSDKper Java 2.x è compatibile con AWS SDKJava 2.x. È basato su Java 8+ e include il supporto per l'I/O non bloccante. Per informazioni sull'utilizzo di DAX with AWS SDK per Java 1.x, vedere Usare DAX with AWS SDK per Java 1.x

Utilizzo del client come dipendenza Maven

Segui questi passaggi per utilizzare il client DAX SDK for Java nell'applicazione come dipendenza.

  1. Scarica e installa Apache Maven. Per ulteriori informazioni, consulta le pagine relative al download di Apache Maven e all'installazione di Apache Maven.

  2. Aggiungi la dipendenza del client Maven al file Project Object Model () dell'applicazione. POM In questo esempio, sostituisci x.x.x con il numero di versione effettivo del client.

    <!--Dependency:--> <dependencies> <dependency> <groupId>software.amazon.dax</groupId> <artifactId>amazon-dax-client</artifactId> <version>x.x.x</version> </dependency> </dependencies>

TryDax codice di esempio

Dopo aver configurato l'area di lavoro e averla aggiunta DAX SDK come dipendenza, copiala TryDax.java nel progetto.

Eseguire il codice utilizzando questo comando.

java -cp classpath TryDax

Verrà visualizzato un output simile al seguente.

Creating a DynamoDB client Attempting to create table; please wait... Successfully created table. Table status: ACTIVE Writing data to the table... Writing 10 items for partition key: 1 Writing 10 items for partition key: 2 Writing 10 items for partition key: 3 ... Running GetItem and Query tests... First iteration of each test will result in cache misses Next iterations are cache hits GetItem test - partition key 1-100 and sort keys 1-10 Total time: 4390.240 ms - Avg time: 4.390 ms Total time: 3097.089 ms - Avg time: 3.097 ms Total time: 3273.463 ms - Avg time: 3.273 ms Total time: 3353.739 ms - Avg time: 3.354 ms Total time: 3533.314 ms - Avg time: 3.533 ms Query test - partition key 1-100 and sort keys between 2 and 9 Total time: 475.868 ms - Avg time: 4.759 ms Total time: 423.333 ms - Avg time: 4.233 ms Total time: 460.271 ms - Avg time: 4.603 ms Total time: 397.859 ms - Avg time: 3.979 ms Total time: 466.644 ms - Avg time: 4.666 ms Attempting to delete table; please wait... Successfully deleted table.

Prendi nota delle informazioni sui tempi: il numero di millisecondi richiesto per i test GetItem e Query. In questo caso, il programma è stato eseguito sull'endpoint DynamoDB. Ora eseguirai nuovamente il programma, questa volta sul tuo DAX cluster.

Per determinare l'endpoint del DAX cluster, scegli una delle seguenti opzioni:

  • Nella console DynamoDB, seleziona il tuo cluster. DAX L'endpoint del cluster viene visualizzato nella console, come nell'esempio seguente.

    dax://my-cluster.l6fzcv.dax-clusters.us-east-1.amazonaws.com
  • Usando AWS CLI, inserisci il seguente comando:

    aws dax describe-clusters --query "Clusters[*].ClusterDiscoveryEndpoint"

    L'indirizzo dell'endpoint del cluster, la porta e URL vengono visualizzati nell'output, come nell'esempio seguente.

    { "Address": "my-cluster.l6fzcv.dax-clusters.us-east-1.amazonaws.com", "Port": 8111, "URL": "dax://my-cluster.l6fzcv.dax-clusters.us-east-1.amazonaws.com" }

Ora esegui nuovamente il programma, ma questa volta specifica l'endpoint del cluster URL come parametro della riga di comando.

java -cp classpath TryDax dax://my-cluster.l6fzcv.dax-clusters.us-east-1.amazonaws.com

Consultare l'output e prendere nota delle informazioni sui tempi. I tempi trascorsi per GetItem e Query dovrebbero essere significativamente inferiori DAX rispetto a DynamoDB.

SDKmetriche

Con DAX SDK for Java 2.x, puoi raccogliere metriche sui client di servizio nella tua applicazione e analizzare l'output in Amazon. CloudWatch Per ulteriori informazioni, consulta Abilitazione SDK delle metriche.

Nota

The DAX SDK for Java raccoglie solo metriche ApiCallSuccessful eApiCallDuration.