Usare l'interfaccia della riga di comando di Azure per creare un'API per l'account Cassandra, il keyspace e la tabella con scalabilità automatica
SI APPLICA A: Cassandra
Lo script in questo articolo crea un account, un keyspace e una tabella di Azure Cosmos DB per Apache Cassandra con scalabilità automatica.
Prerequisiti
-
Se non si ha una sottoscrizione di Azure, creare un account Azure gratuito prima di iniziare.
Questo script richiede l'interfaccia della riga di comando di Azure versione 2.12.1 o successiva.
È possibile eseguire lo script nell'ambiente Bash in Azure Cloud Shell. Quando si apre Cloud Shell, assicurarsi di selezionare Bash nel campo ambiente in alto a sinistra della finestra della shell. Cloud Shell ha la versione più recente dell'interfaccia della riga di comando di Azure.
Se si preferisce, è possibile installare l'interfaccia della riga di comando di Azure per eseguire lo script in locale. Eseguire az version per trovare la versione dell'interfaccia della riga di comando di Azure ed eseguire az upgrade se è necessario eseguire l'aggiornamento . Accedere ad Azure eseguendo az login.
Script di esempio
Questo script usa i comandi seguenti:
- az group create crea un gruppo di risorse per archiviare tutte le risorse.
- az cosmosdb create con il
--capabilities EnableCassandra
parametro crea un'API per l'account Azure Cosmos DB abilitato per Cassandra. - az cosmosdb cassandra keyspace create crea un keyspace Cassandra di Azure Cosmos DB.
- az cosmosdb cassandra table create con il
--max-throughput
parametro impostato su minimum4000
crea una tabella Cassandra di Azure Cosmos DB con scalabilità automatica.
# Create a Cassandra keyspace and table with autoscale
# Variable block
let "randomIdentifier=$RANDOM*$RANDOM"
location="East US"
resourceGroup="msdocs-cosmosdb-rg-$randomIdentifier"
tag="autoscale-casandra-cosmosdb"
account="msdocs-account-cosmos-$randomIdentifier" #needs to be lower case
keySpace="keyspace1-$randomIdentifier"
table="table1-$randomIdentifier"
maxThroughput=1000 #minimum = 1000
# Create a resource group
echo "Creating $resourceGroup in $location..."
az group create --name $resourceGroup --location "$location" --tags $tag
# Create a Cosmos account for Cassandra API
echo "Creating $account"
az cosmosdb create --name $account --resource-group $resourceGroup --capabilities EnableCassandra --default-consistency-level Eventual --locations regionName="$location" failoverPriority=0 isZoneRedundant=False
# Create a Cassandra Keyspace
echo "Create $keySpace"
az cosmosdb cassandra keyspace create --account-name $account --resource-group $resourceGroup --name $keySpace
# Define the schema for the table
schema=$(cat << EOF
{
"columns": [
{"name": "columna","type": "uuid"},
{"name": "columnb","type": "int"},
{"name": "columnc","type": "text"}
],
"partitionKeys": [
{"name": "columna"}
],
"clusterKeys": [
{ "name": "columnb", "orderBy": "asc" }
]
}
EOF
)
# Persist schema to json file
echo "$schema" > "schema-$randomIdentifier.json"
# Create the Cassandra table
echo "Creating $table"
az cosmosdb cassandra table create --account-name $account --resource-group $resourceGroup --keyspace-name $keySpace --name $table --max-throughput $maxThroughput --schema @schema-$randomIdentifier.json
# Clean up temporary schema file
rm -f "schema-$randomIdentifier.json"
Eliminare risorse
Se non sono necessarie le risorse create, usare il comando az group delete per eliminare il gruppo di risorse e tutte le risorse in esso contenute, inclusi l'account e il keyspace di Azure Cosmos DB.
az group delete --name $resourceGroup
Passaggi successivi
Documentazione dell'interfaccia della riga di comando di Azure Cosmos DB