DocumentDB ou Azure Cosmos DB – evolução do DocumentDB com distribuição global, escalabilidade e SLA melhorado – é a plataforma de banco de dados NoSQL da Microsoft, que é executada no Azure. Ele foi projetado tendo em mente os requisitos de gerenciamento de dados para as últimas aplicações.
Neste artigo, vou explicar passo a passo como criar uma Collection e um novo registro no Azure Cosmos DB com exemplos ilustrativos.
Vamos começar?
Passos
O procedimento será muito simples. Utilizaremos um projeto de exemplo.
- Baixe no GitHub a POC que faz o CRUD das informações. (Num próximo artigo entraremos nos detalhes da aplicação).
- Abra-o no seu editor favorito. Aqui, estou usando o Microsoft Visual Studio.
- Perceba que no arquivo Web.config temos duas informações necessárias que vamos precisar preencher para a solução rodar perfeitamente:
<add key=”endpoint” value=”https://XXXX.documents.azure.com:433/” /> <add key=”authKey” value=”XXXXX” />
4. Acesse o portal Azure e no menu lateral selecione Criando Novo → Databases → Azure Cosmos DB
5. Será solicitado uma série de informações para a sua conta. Coloque-as conforme o quadro abaixo:
Configuração | Valor Sugerido | Descrição |
ID | Valor exclusivo | Um nome exclusivo que identifica sua conta Azure Cosmos DB. A string documents.azure.com é anexada à ID que você fornece para criar seu URI, então use uma identificação única, mas identificável. O ID pode conter apenas letras minúsculas, números e o hífen (-), e deve conter de 3 a 50 caracteres. |
API | SQL (DocumentDB) | Programamos contra a API DocumentDB mais adiante neste artigo. |
Inscrição | Sua assinatura | A assinatura do Azure que você deseja usar para sua conta Azure Cosmos DB. |
Grupo de Recursos |
O mesmo valor que ID |
O novo nome do grupo de recursos para sua conta. Por simplicidade, você pode usar o mesmo nome que seu ID. |
Localização | A região mais próxima dos seus usuários | A localização geográfica em que hospeda sua conta Azure Cosmos DB. Escolha o local mais próximo dos seus usuários para dar-lhes o acesso mais rápido aos dados. |
Ao final, ficará semelhante a este:
6. Para criar a Collection, selecione: Azure Cosmos DB → Data Explorer → New Collection. Preencha-o de acordo com os dados da tabela a seguir:
Configuração | Valor sugerido | Descrição |
ID da base de dados | Tarefas | O ID para o seu novo banco de dados. Os nomes de banco de dados devem conter de 1 a 255 caracteres, e eles não podem conter /, \, #,? ou um espaço final. |
ID da coleção | Unid | O ID para a sua nova coleção. Os nomes de coleção têm os mesmos requisitos de caracteres que os IDs de banco de dados. |
Capacidade de armazenamento | Fixo (10GB) | Use o valor padrão. Esta é a capacidade de armazenamento do banco de dados. |
Taxa de transferência | 400 RU | Use o valor padrão. Se você quiser reduzir a latência, você pode ampliar o throughput mais tarde. |
Rum | Fora | Deixe o valor padrão. Se você precisar lidar com as cargas de trabalho com precisão, você pode ativar o recurso RU/m naquele momento |
Tecla Partição | /categoria | Uma chave de partição que distribui dados uniformemente para cada partição correta é importante na criação de uma coleção executada. Para saber mais, consulte Designado para particionamento. |
Ao final, deverá ficar assim:
7. Por padrão, o Azure cria uma tabela “c” com os registros. Existe a opção para renomear, mas para este teste vamos usar a mesma. Clique com o botão direito na sua Collection, selecione Nova Query e pressione Run.
8. Agora vamos criar um novo registro. Para isso, selecione Document → New Document. Escreva os dados que deseja no formato JSON – lembrando que de preferência, use o campo “id” minúsculo, pois ele vai substituir o id RANDOM que o Azure gera automaticamente. E para criação, edição e exclusão via API, será mais complexo gerenciar este valor randômico.
9. Agora na sua aplicação, você vai verificar que no NuGet Microsoft.Azure.DbDocument está baixado e será necessário configurar as informações de endpoint e authKey no Web.config. Para isso, selecione Chaves no mesmo menu acima e copie as informações.
E pronto, você criou sua collection no Azure Cosmos DB!