Início Rápido: Criar uma aplicação para Cassandra com o CQLSH e o Azure Cosmos DB
APLICA-SE A: Cassandra
Neste início rápido, vai criar uma conta do Azure Cosmos DB para Apache Cassandra e utilizar o CQLSH para criar uma base de dados e um contentor do Cassandra. O Azure Cosmos DB é um serviço de base de dados com vários modelos que lhe permite criar e consultar rapidamente bases de dados de documentos, tabelas, chaves-valor e grafos com capacidades de distribuição global e dimensionamento horizontal.
Pré-requisitos
- Uma conta do Azure com uma subscrição ativa. Crie uma gratuitamente. Em alternativa, experimente o Azure Cosmos DB gratuitamente sem uma subscrição do Azure.
Criar uma conta de base de dados
Antes de poder criar uma base de dados de documentos, tem de criar uma conta do Cassandra com o Azure Cosmos DB.
No menu portal do Azure ou na Home page, selecione Criar um recurso.
Na página Novo , procure e selecione Azure Cosmos DB.
Na página Azure Cosmos DB , selecione Criar.
Na página API , selecione Criar na secção Cassandra .
A API determina o tipo de conta a criar. O Azure Cosmos DB fornece cinco APIs: NoSQL para bases de dados de documentos, Gremlin para bases de dados de gráficos, MongoDB para bases de dados de documentos, Tabela do Azure e Cassandra. Tem de criar uma conta separada para cada API.
Selecione Cassandra, porque neste início rápido está a criar uma tabela que funciona com a API para Cassandra.
Na página Criar Conta do Azure Cosmos DB , introduza as definições básicas para a nova conta do Azure Cosmos DB.
Definição Valor Descrição Subscrição A sua subscrição Selecione a subscrição do Azure que quer utilizar para esta conta do Azure Cosmos DB. Grupo de Recursos Criar novo
Em seguida, introduza o mesmo nome que Nome da ContaSelecione Criar novo. Em seguida, introduza um novo nome de grupo de recursos para a sua conta. Para simplificar, utilize o mesmo nome que o nome da sua conta do Azure Cosmos DB. Nome da Conta Introduza um nome exclusivo Introduza um nome exclusivo para identificar a sua conta do Azure Cosmos DB. O URI da conta será cassandra.cosmos.azure.com anexado ao nome exclusivo da sua conta.
O nome da conta só pode utilizar letras minúsculas, números e hífenes (-) e tem de ter entre 3 e 31 carateres de comprimento.Localização A região mais próxima dos seus utilizadores Selecione a localização geográfica para alojar a sua conta do Azure Cosmos DB. Utilize a localização mais próxima dos utilizadores para lhes dar o acesso mais rápido aos dados. Modo de capacidade Débito aprovisionado ou Sem servidor Selecione Débito aprovisionado para criar uma conta no modo de débito aprovisionado . Selecione Sem servidor para criar uma conta no modo sem servidor . Aplicar o desconto de escalão gratuito do Azure Cosmos DB Aplicar ou Não aplicar Com o escalão gratuito do Azure Cosmos DB, obterá as primeiras 1000 RU/s e 25 GB de armazenamento gratuitamente numa conta. Saiba mais sobre o escalão gratuito. Limitar débito total da conta Selecionar para limitar o débito da conta Isto é útil se quiser limitar o débito total da conta a um valor específico. Nota
Pode ter até uma conta do Azure Cosmos DB de escalão gratuito por subscrição do Azure e tem de optar ativamente por participar ao criar a conta. Se não vir a opção para aplicar o desconto de escalão gratuito, significa que já foi ativada outra conta na subscrição com o escalão gratuito.
No separador Distribuição Global , configure os seguintes detalhes. Pode deixar os valores predefinidos para efeitos deste início rápido:
Definição Valor Descrição Redundância Geográfica Desativar Ative ou desative a distribuição global na sua conta ao emparelhar a sua região com uma região de par. Pode adicionar mais regiões à sua conta mais tarde. Escritas de várias regiões Desativar A capacidade de escrita de várias regiões permite-lhe tirar partido do débito aprovisionado para as suas bases de dados e contentores em todo o mundo. Zonas de Disponibilidade Desativar Zonas de Disponibilidade são localizações isoladas numa região do Azure. Cada zona é composta por um ou mais datacenters equipados com energia, refrigeração e rede independentes. Nota
As seguintes opções não estão disponíveis se selecionar Sem servidor como modo de Capacidade:
- Aplicar Desconto de Escalão Gratuito
- Georredundância
- Escritas de várias regiões
Opcionalmente, pode configurar detalhes adicionais nos seguintes separadores:
- Rede – configure o acesso a partir de uma rede virtual.
- Política de Cópia de Segurança – configure uma política de cópia de segurança periódica ou contínua .
- Encriptação – utilize uma chave gerida pelo serviço ou uma chave gerida pelo cliente.
- Etiquetas – as etiquetas são pares nome/valor que lhe permitem categorizar recursos e ver a faturação consolidada ao aplicar a mesma etiqueta a vários recursos e grupos de recursos.
Selecione Rever + criar.
Reveja as definições da conta e, em seguida, selecione Criar. A criação da conta demora alguns minutos. Aguarde até que a página do portal apresente A implementação está concluída.
Selecione Ir para recurso para aceder à página da conta do Azure Cosmos DB.
Instalar a ferramenta CQLSH autónoma
Veja a shell CQL sobre os passos para iniciar uma ferramenta cqlsh autónoma.
Atualizar a cadeia de ligação
Agora, regresse ao portal do Azure para obter as informações da cadeia de ligação e copie-as para a aplicação. Os detalhes da cadeia de ligação permitem que a aplicação comunique com a base de dados alojada.
Na sua conta do Azure Cosmos DB no portal do Azure, selecione Cadeia de Ligação.
Utilize o botão no lado direito do ecrã para copiar o valor USERNAME e PASSWORD.
No terminal, defina as variáveis SSL:
# Export the SSL variables: export SSL_VERSION=TLSv1_2 export SSL_VALIDATE=false
Ligar ao Azure Cosmos DB para Apache Cassandra:
- Cole o valor USERNAME e PASSWORD no comando .
cqlsh <USERNAME>.cassandra.cosmos.azure.com 10350 -u <USERNAME> -p <PASSWORD> --ssl --protocol-version=4
Comandos CQL para criar e executar uma aplicação
- Criar espaço de chaves
CREATE KEYSPACE IF NOT EXISTS uprofile
WITH REPLICATION = { 'class' : 'NetworkTopologyStrategy', 'datacenter1' : 1 };
- Criar uma tabela
CREATE TABLE IF NOT EXISTS uprofile.user (user_id int PRIMARY KEY, user_name text, user_bcity text);
- Inserir uma linha na tabela de utilizador
INSERT INTO uprofile.user (user_id, user_name, user_bcity) VALUES (101,'johnjoe','New York')
Também pode inserir dados com o comando COPY.
COPY uprofile.user(user_id, user_name, user_bcity) FROM '/path to file/fileName.csv'
WITH DELIMITER = ',' ;
- Consultar a tabela de utilizadores
SELECT * FROM uprofile.users;
No portal do Azure, abra o Data Explorer para consultar, modificar e trabalhar com estes dados novos.
Rever os SLAs no portal do Azure
O portal do Azure monitoriza o débito, o armazenamento, a disponibilidade, a latência e a consistência da conta do Azure Cosmos DB. Os gráficos para métricas associadas a um Contrato de Nível de Serviço (SLA) do Azure Cosmos DB mostram o valor do SLA em comparação com o desempenho real. Este conjunto de métricas torna a monitorização dos SLAs transparente.
Para rever as métricas e os SLAs:
Selecione Métricas no menu de navegação da sua conta do Azure Cosmos DB.
Selecione um separador, como Latência, e selecione um período de tempo à direita. Compare as linhas Real e SLA nos gráficos.
Reveja as métricas nos outros separadores.
Limpar os recursos
Quando terminar a aplicação e a conta do Azure Cosmos DB, pode eliminar os recursos do Azure que criou para não incorrer em mais custos. Para eliminar os recursos:
Na barra de Pesquisa do portal do Azure, procure e selecione Grupos de recursos.
Na lista, selecione o grupo de recursos que criou para este início rápido.
Na página Descrição geral do grupo de recursos, selecione Eliminar grupo de recursos.
Na janela seguinte, introduza o nome do grupo de recursos a eliminar e, em seguida, selecione Eliminar.
Passos seguintes
Neste início rápido, aprendeu a criar uma conta do Azure Cosmos DB com a API para Cassandra com o CQLSH que cria uma base de dados e um contentor do Cassandra. Agora pode importar dados adicionais para a sua conta do Azure Cosmos DB.