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à.
Puoi utilizzare il plugin AWS Command Line Interface (AWS CLI) per controllarne più AWS servizi dalla riga di comando e automatizzarli tramite script. Con Amazon Keyspaces puoi usare AWS CLI per operazioni relative al linguaggio di definizione dei dati (DDL), come la creazione di una tabella. Inoltre, è possibile utilizzare servizi e strumenti di infrastruttura come codice (IaC) come AWS CloudFormation e Terraform.
Prima di poter utilizzare il AWS CLI con Amazon Keyspaces, devi ottenere un ID chiave di accesso e una chiave di accesso segreta. Per ulteriori informazioni, consulta Crea e configura AWS credenziali per Amazon Keyspaces.
Per un elenco completo di tutti i comandi disponibili per Amazon Keyspaces nel AWS CLI, vedi il AWS CLI Riferimento ai comandi
Scaricamento e configurazione di AWS CLI
Il AWS CLI è disponibile all'indirizzo. https://aws.amazon.com/cli
-
Segui le istruzioni per l'installazione di AWS CLIe configurazione di AWS CLI
Utilizzo di AWS CLI con Amazon Keyspaces
Il formato della riga di comando è costituito da un nome di operazione Amazon Keyspaces seguito dai parametri per tale operazione. Il AWS CLI supporta una sintassi abbreviata per i valori dei parametri, nonché. JSON I seguenti esempi di Amazon Keyspaces utilizzano AWS CLI sintassi abbreviata. Per ulteriori informazioni, vedere Utilizzo della sintassi abbreviata con AWS CLI.
Il comando seguente crea uno spazio di chiavi con il nome catalog.
aws keyspaces create-keyspace --keyspace-name 'catalog'
Il comando restituisce la risorsa Amazon Resource Name (ARN) nell'output.
{ "resourceArn": "arn:aws:cassandra:us-east-1:111222333444:/keyspace/catalog/" }
Per confermare l'esistenza del catalogo keyspace, puoi usare il seguente comando.
aws keyspaces get-keyspace --keyspace-name 'catalog'
L'output del comando restituisce i seguenti valori.
{ "keyspaceName": "catalog", "resourceArn": "arn:aws:cassandra:us-east-1:111222333444:/keyspace/catalog/" }
Il comando seguente crea una tabella con il nome book_awards. La chiave di partizione della tabella è costituita dalle colonne year
award
e la chiave di clustering è costituita dalle colonne category
ed rank
entrambe le colonne di clustering utilizzano l'ordinamento crescente. Per facilitare la leggibilità, in questa sezione i comandi lunghi sono suddivisi su righe separate.
aws keyspaces create-table --keyspace-name 'catalog' --table-name 'book_awards' --schema-definition 'allColumns=[{name=year,type=int},{name=award,type=text},{name=rank,type=int}, {name=category,type=text}, {name=author,type=text},{name=book_title,type=text},{name=publisher,type=text}], partitionKeys=[{name=year},{name=award}],clusteringKeys=[{name=category,orderBy=ASC},{name=rank,orderBy=ASC}]'
Questo comando produce l'output seguente.
{ "resourceArn": "arn:aws:cassandra:us-east-1:111222333444:/keyspace/catalog/table/book_awards" }
Per confermare i metadati e le proprietà della tabella, è possibile utilizzare il seguente comando.
aws keyspaces get-table --keyspace-name 'catalog' --table-name 'book_awards'
Questo comando restituisce il seguente output.
{ "keyspaceName": "catalog", "tableName": "book_awards", "resourceArn": "arn:aws:cassandra:us-east-1:111222333444:/keyspace/catalog/table/book_awards", "creationTimestamp": 1645564368.628, "status": "ACTIVE", "schemaDefinition": { "allColumns": [ { "name": "year", "type": "int" }, { "name": "award", "type": "text" }, { "name": "category", "type": "text" }, { "name": "rank", "type": "int" }, { "name": "author", "type": "text" }, { "name": "book_title", "type": "text" }, { "name": "publisher", "type": "text" } ], "partitionKeys": [ { "name": "year" }, { "name": "award" } ], "clusteringKeys": [ { "name": "category", "orderBy": "ASC" }, { "name": "rank", "orderBy": "ASC" } ], "staticColumns": [] }, "capacitySpecification": { "throughputMode": "PAY_PER_REQUEST", "lastUpdateToPayPerRequestTimestamp": 1645564368.628 }, "encryptionSpecification": { "type": "AWS_OWNED_KMS_KEY" }, "pointInTimeRecovery": { "status": "DISABLED" }, "ttl": { "status": "ENABLED" }, "defaultTimeToLive": 0, "comment": { "message": "" } }
Quando si creano tabelle con schemi complessi, può essere utile caricare la definizione dello schema della tabella da un JSON file. Di seguito è riportato un esempio di ciò. Scaricate il JSON file di esempio di definizione dello schema da schema_definition.zip ed estraeteloschema_definition.json
, prendendo nota del percorso del file. In questo esempio, il JSON file di definizione dello schema si trova nella directory corrente. Per le diverse opzioni relative al percorso dei file, consultate Come caricare i parametri da un file.
aws keyspaces create-table --keyspace-name 'catalog' --table-name 'book_awards' --schema-definition '
file://schema_definition.json
'
Gli esempi seguenti mostrano come creare una tabella semplice con lo stesso nome myTablecon opzioni aggiuntive. Nota che i comandi sono suddivisi in righe separate per migliorare la leggibilità. Questo comando mostra come creare una tabella e:
imposta la modalità di capacità della tabella
abilita oint-in-time il ripristino P per la tabella
imposta il valore Time to Live (TTL) predefinito per la tabella su un anno
aggiungi due tag per la tabella
aws keyspaces create-table --keyspace-name 'catalog' --table-name 'myTable' --schema-definition 'allColumns=[{name=id,type=int},{name=name,type=text},{name=date,type=timestamp}],partitionKeys=[{name=id}]' --capacity-specification 'throughputMode=PROVISIONED,readCapacityUnits=5,writeCapacityUnits=5' --point-in-time-recovery 'status=ENABLED' --default-time-to-live '31536000' --tags 'key=env,value=test' 'key=dpt,value=sec'
Questo esempio mostra come creare una nuova tabella che utilizza una chiave gestita dal cliente per la crittografia e TTL che consente di impostare le date di scadenza per colonne e righe. Per eseguire questo esempio, è necessario sostituire la risorsa ARN per la risorsa gestita dal cliente AWS KMS digita con la tua chiave e assicurati che Amazon Keyspaces vi abbia accesso.
aws keyspaces create-table --keyspace-name 'catalog' --table-name 'myTable' --schema-definition 'allColumns=[{name=id,type=int},{name=name,type=text},{name=date,type=timestamp}],partitionKeys=[{name=id}]' --encryption-specification 'type=CUSTOMER_MANAGED_KMS_KEY,kmsKeyIdentifier=
arn:aws:kms:us-east-1:111222333444:key/11111111-2222-3333-4444-555555555555
' --ttl 'status=ENABLED'