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

CreateTable

Importante

In questa sezione si fa riferimento alla versione API 2011-12-05, che è obsoleta e non deve essere utilizzata per le nuove applicazioni.

Per informazioni sull'API di basso livello corrente, consulta la Amazon DynamoDB API Reference.

Descrizione

L'operazione CreateTable aggiunge una nuova tabella all'account.

Il nome della tabella deve essere univoco tra quelli associati all'account AWS che effettua la richiesta e alla regione AWS che riceve la richiesta (ad esempio dynamodb.us-west-2.amazonaws.com). Ogni endpoint DynamoDB è completamente indipendente. Ad esempio, se sono presenti due tabelle chiamate "MyTable", una in dynamodb.us-west-2.amazonaws.com e una in dynamodb.us-west-1.amazonaws.com, queste tabelle sono completamente indipendenti e non condividono alcun dato.

L'operazione CreateTable attiva un flusso di lavoro asincrono per iniziare a creare la tabella. DynamoDB restituisce immediatamente lo stato della tabella (CREATING) fino a quando la tabella si trova nello stato ACTIVE. Una volta che la tabella si trova nello stato ACTIVE, è possibile eseguire le operazioni del piano dati.

Utilizza l'operazione DescribeTables per visualizzare lo stato della tabella.

Richieste

Sintassi

// This header is abbreviated. // For a sample of a complete header, see API DynamoDB di basso livello. POST / HTTP/1.1 x-amz-target: DynamoDB_20111205.CreateTable content-type: application/x-amz-json-1.0 {"TableName":"Table1", "KeySchema": {"HashKeyElement":{"AttributeName":"AttributeName1","AttributeType":"S"}, "RangeKeyElement":{"AttributeName":"AttributeName2","AttributeType":"N"}}, "ProvisionedThroughput":{"ReadCapacityUnits":5,"WriteCapacityUnits":10} }
Nome Descrizione Obbligatorio
TableName

Nome della tabella da creare.

I caratteri consentiti sono a-z, A-Z, 0-9, '_' (sottolineatura), '-' (trattino) e '.' (punto). I nomi possono contenere un numero di caratteri compreso tra 3 e 255 caratteri.

Tipo: string

KeySchema

La struttura della chiave primaria (semplice o composita) per la tabella. Una coppia nome-valore per HashKeyElement è obbligatoria mentre una coppia nome-valore per RangeKeyElement è facoltativa (richiesta solo per le chiavi primarie composite). Per ulteriori informazioni sulle chiavi primarie, vedere Chiave primaria.

I nomi degli elementi della chiave primaria possono contenere un massimo di 255 caratteri, senza alcuna limitazione.

I valori possibili per AttributeType sono "S" (stringa), "N" (numerico) o "B" (binario).

Tipo: mappa di HashKeyElement, oppure HashKeyElement e RangeKeyElement per una chiave primaria composita.

ProvisionedThroughput La nuova velocità effettiva per la tabella specificata, costituita dai valori per ReadCapacityUnits e WriteCapacityUnits. Per dettagli, consulta Gestione delle impostazioni sulle tabelle di capacità assegnata di DynamoDB.
Nota

Per i valori massimi e minimi correnti, consulta Quote di servizio, account e tabelle in Amazon DynamoDB.

Tipo: Array

ProvisionedThroughput: ReadCapacityUnits

Imposta il numero minimo di ReadCapacityUnits con consistenza consumate al secondo per la tabella specificata prima che DynamoDB bilanci il carico con altre operazioni.

Le operazioni di lettura a consistenza finale richiedono meno sforzo rispetto a un'operazione di lettura consistente, quindi un'impostazione di 50 ReadCapacityUnits consistente al secondo fornisce 100 ReadCapacityUnits a consistenza finale al secondo.

Tipo: numero

ProvisionedThroughput: WriteCapacityUnits Imposta il numero minimo di WriteCapacityUnits consumate al secondo per la tabella specificata prima che DynamoDB bilanci il carico con altre operazioni.

Tipo: numero

Risposte

Sintassi

HTTP/1.1 200 OK x-amzn-RequestId: CSOC7TJPLR0OOKIRLGOHVAICUFVV4KQNSO5AEMVJF66Q9ASUAAJG content-type: application/x-amz-json-1.0 content-length: 311 Date: Tue, 12 Jul 2011 21:31:03 GMT {"TableDescription": {"CreationDateTime":1.310506263362E9, "KeySchema": {"HashKeyElement":{"AttributeName":"AttributeName1","AttributeType":"S"}, "RangeKeyElement":{"AttributeName":"AttributeName2","AttributeType":"N"}}, "ProvisionedThroughput":{"ReadCapacityUnits":5,"WriteCapacityUnits":10}, "TableName":"Table1", "TableStatus":"CREATING" } }
Nome Descrizione
TableDescription Un container per le proprietà della tabella.
CreationDateTime

La data in cui la tabella è stata creata in formato orario epoch UNIX.

Tipo: numero

KeySchema

La struttura della chiave primaria (semplice o composita) per la tabella. Una coppia nome-valore per HashKeyElement è obbligatoria mentre una coppia nome-valore per RangeKeyElement è facoltativa (richiesta solo per le chiavi primarie composite). Per ulteriori informazioni sulle chiavi primarie, vedere Chiave primaria.

Tipo: mappa di HashKeyElement, oppure HashKeyElement e RangeKeyElement per una chiave primaria composita.

ProvisionedThroughput

Velocità effettiva per la tabella specificata, costituita dai valori per ReadCapacityUnits e WriteCapacityUnits. Per informazioni, consultare Gestione delle impostazioni sulle tabelle di capacità assegnata di DynamoDB.

Tipo: Array

ProvisionedThroughput :ReadCapacityUnits

Il numero minimo di ReadCapacityUnits consumate al secondo prima che DynamoDB bilanci il carico con altre operazioni

Tipo: numero

ProvisionedThroughput :WriteCapacityUnits

Il numero minimo di ReadCapacityUnits consumate al secondo prima che WriteCapacityUnits bilanci il carico con altre operazioni

Tipo: numero

TableName

Il nome della tabella creata.

Tipo: string

TableStatus

Lo stato corrente della tabella (CREATING). Una volta che la tabella si trova nello stato ACTIVE, è possibile inserire i dati.

Utilizza l'API DescribeTables per controllare lo stato della tabella.

Tipo: string

Errori speciali

Errore Descrizione
ResourceInUseException Tentativo di creare nuovamente una tabella già esistente.
LimitExceededException

Il numero di richieste di tabella simultanee (numero cumulativo di tabelle nello stato CREATING, DELETING o UPDATING) supera il massimo consentito.

Nota

Per i valori massimi e minimi correnti, consulta Quote di servizio, account e tabelle in Amazon DynamoDB.

.

Esempi

Nell'esempio seguente viene creata una tabella con una chiave primaria composita contenente una stringa e un numero. Per gli esempi di utilizzo dell'SDK AWS, consulta Utilizzo di tabelle e dati in DynamoDB.

Richiesta di esempio

// This header is abbreviated. // For a sample of a complete header, see API DynamoDB di basso livello. POST / HTTP/1.1 x-amz-target: DynamoDB_20111205.CreateTable content-type: application/x-amz-json-1.0 {"TableName":"comp-table", "KeySchema": {"HashKeyElement":{"AttributeName":"user","AttributeType":"S"}, "RangeKeyElement":{"AttributeName":"time","AttributeType":"N"}}, "ProvisionedThroughput":{"ReadCapacityUnits":5,"WriteCapacityUnits":10} }

Risposta di esempio

HTTP/1.1 200 OK x-amzn-RequestId: CSOC7TJPLR0OOKIRLGOHVAICUFVV4KQNSO5AEMVJF66Q9ASUAAJG content-type: application/x-amz-json-1.0 content-length: 311 Date: Tue, 12 Jul 2011 21:31:03 GMT {"TableDescription": {"CreationDateTime":1.310506263362E9, "KeySchema": {"HashKeyElement":{"AttributeName":"user","AttributeType":"S"}, "RangeKeyElement":{"AttributeName":"time","AttributeType":"N"}}, "ProvisionedThroughput":{"ReadCapacityUnits":5,"WriteCapacityUnits":10}, "TableName":"comp-table", "TableStatus":"CREATING" } }