Use a CLI do Azure para criar uma conta, um keyspace e uma tabela da API for Cassandra com dimensionamento automático
APLICA-SE AO: Cassandra
O script deste artigo cria uma conta, um keyspace e uma tabela do Azure Cosmos DB for Apache Cassandra com dimensionamento automático.
Pré-requisitos
-
Caso você não tenha uma assinatura do Azure, crie uma conta gratuita do Azure antes de começar.
Este script requer a CLI do Azure versão 2.12.1 ou mais recente.
Você pode executar o script no ambiente bash no Azure Cloud Shell. Quando o Cloud Shell for aberto, selecione Bash no campo de ambiente no canto superior esquerdo da janela do shell. O Cloud Shell tem a versão mais recente da CLI do Azure.
Se preferir, instale a CLI do Azure para executar o script localmente. Execute version az para localizar a versão da CLI do Azure e execute az upgrade se precisar atualizar. Entre no Azure executando az login.
Exemplo de script
Este script usa os seguintes comandos:
- az group create cria um grupo de recursos para armazenar todos os recursos.
- az cosmosdb create com o parâmetro
--capabilities EnableCassandra
cria uma conta do Azure Cosmos DB habilitada para a API for Cassandra. - az cosmosdb cassandra keyspace create cria um keyspace do Cassandra para o Azure Cosmos DB.
- az cosmosdb cassandra table create com o parâmetro
--max-throughput
definido como, no mínimo,4000
cria uma tabela do Cassandra para o Azure Cosmos DB com dimensionamento automático.
# 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"
Excluir recursos
Se você não precisar dos recursos criados, use o comando az group delete para excluir o grupo de recursos e todos os recursos contidos nele, incluindo a conta e o keyspace do Azure Cosmos DB.
az group delete --name $resourceGroup