DynamoDB - Crea tabella

La creazione di una tabella consiste generalmente nel generare la tabella, nominarla, stabilire i suoi attributi di chiave primaria e impostare i tipi di dati degli attributi.

Utilizzare la console GUI, Java o un'altra opzione per eseguire queste attività.

Crea tabella utilizzando la console GUI

Crea una tabella accedendo alla console all'indirizzo https://console.aws.amazon.com/dynamodb. Quindi scegli l'opzione "Crea tabella".

Il nostro esempio genera una tabella popolata con informazioni sul prodotto, con prodotti di attributi univoci identificati da un numero ID (attributo numerico). NelCreate Tableschermo, immettere il nome della tabella all'interno del campo del nome della tabella; inserire la chiave primaria (ID) nel campo della chiave di partizione; e immettere "Numero" per il tipo di dati.

Dopo aver inserito tutte le informazioni, selezionare Create.

Crea tabella utilizzando Java

Usa Java per creare la stessa tabella. La sua chiave primaria è costituita dai seguenti due attributi:

  • ID - Usa una chiave di partizione e ScalarAttributeType N, che significa numero.

  • Nomenclature - Usa una chiave di ordinamento e ScalarAttributeType S, che significa stringa.

Java utilizza l'estensione createTable methodgenerare una tabella; e all'interno della chiamata vengono specificati il ​​nome della tabella, gli attributi della chiave primaria e i tipi di dati degli attributi.

Puoi rivedere il seguente esempio:

import java.util.Arrays;
 
import com.amazonaws.services.dynamodbv2.AmazonDynamoDBClient; 
import com.amazonaws.services.dynamodbv2.document.DynamoDB; 
import com.amazonaws.services.dynamodbv2.document.Table; 

import com.amazonaws.services.dynamodbv2.model.AttributeDefinition; 
import com.amazonaws.services.dynamodbv2.model.KeySchemaElement; 
import com.amazonaws.services.dynamodbv2.model.KeyType; 
import com.amazonaws.services.dynamodbv2.model.ProvisionedThroughput; 
import com.amazonaws.services.dynamodbv2.model.ScalarAttributeType;
 
public class ProductsCreateTable {  
   public static void main(String[] args) throws Exception { 
      AmazonDynamoDBClient client = new AmazonDynamoDBClient() 
         .withEndpoint("http://localhost:8000");  
      
      DynamoDB dynamoDB = new DynamoDB(client); 
      String tableName = "Products";  
      try { 
         System.out.println("Creating the table, wait..."); 
         Table table = dynamoDB.createTable (tableName, 
            Arrays.asList ( 
               new KeySchemaElement("ID", KeyType.HASH), // the partition key 
                                                         // the sort key 
               new KeySchemaElement("Nomenclature", KeyType.RANGE)
            ),
            Arrays.asList ( 
               new AttributeDefinition("ID", ScalarAttributeType.N), 
               new AttributeDefinition("Nomenclature", ScalarAttributeType.S)
            ),
            new ProvisionedThroughput(10L, 10L)
         );
         table.waitForActive(); 
         System.out.println("Table created successfully.  Status: " + 
            table.getDescription().getTableStatus());
            
      } catch (Exception e) {
         System.err.println("Cannot create the table: "); 
         System.err.println(e.getMessage()); 
      } 
   } 
}

Nell'esempio sopra, nota l'endpoint: .withEndpoint.

Indica l'uso di un'installazione locale utilizzando localhost. Inoltre, nota il richiestoProvisionedThroughput parameter, che l'installazione locale ignora.