Configurar os seus recursos de conta do Azure Cosmos DB para MongoDB
APLICA-SE A: MongoDB
Os recursos são recursos que podem ser adicionados ou removidos à sua API para a conta do MongoDB. Muitos desses recursos afetam o comportamento da conta, por isso é importante estar totalmente ciente do efeito que um recurso tem antes de ativá-lo ou desativá-lo. Vários recursos são definidos na API para contas MongoDB por padrão e não podem ser alterados ou removidos. Um exemplo é a EnableMongo
capacidade. Este artigo demonstra como habilitar e desabilitar um recurso.
Pré-requisitos
- Uma conta do Azure com uma subscrição ativa. Crie uma conta gratuitamente.
- Uma conta do Azure Cosmos DB para MongoDB. Crie uma API para a conta do MongoDB.
- Acesso à CLI do Azure ou ao portal do Azure. Não há suporte para alterar recursos por meio do Azure Resource Manager.
Capacidades disponíveis
Capacidade | Description | Removível |
---|---|---|
DisableRateLimitingResponses |
Permite que a API do Mongo tente novamente solicitações de limitação de taxa no lado do servidor até o valor definido para max-request-timeout . |
Sim |
EnableMongoRoleBasedAccessControl |
Habilite o suporte para a criação de usuários e funções para o controle de acesso baseado em função nativo do MongoDB. | Não |
EnableMongoRetryableWrites |
Habilita o suporte para gravações repetidas na conta. | Sim |
EnableMongo16MBDocumentSupport |
Permite o suporte para a inserção de documentos de até 16 MB de tamanho. 1 | Não |
EnableUniqueCompoundNestedDocs |
Habilita o suporte para índices compostos e exclusivos em campos aninhados se o campo aninhado não for uma matriz. | Não |
EnableTtlOnCustomPath |
Fornece a capacidade de definir um Time to Live (TTL) personalizado em qualquer campo de uma coleção. Não há suporte para a configuração de TTL na propriedade de índice exclusivo parcial. 2 | Não |
EnablePartialUniqueIndex |
Permite o suporte para um índice parcial exclusivo, para que você tenha mais flexibilidade para especificar exatamente quais campos em documentos deseja indexar. | Não |
Nota
1 Esse recurso não pode ser habilitado em um Azure Cosmos DB para contas MongoDB com chaves gerenciadas pelo cliente (CMK).
Nota
2 Esse recurso não pode ser habilitado em um Azure Cosmos DB para contas MongoDB com backup contínuo.
Importante
A alteração de recursos usando o Azure Resource Manager não está disponível para contas do Azure Cosmos DB para MongoDB.
Habilitar um recurso
Recupere seus recursos de conta existentes usando az cosmosdb show:
az cosmosdb show \ --resource-group <azure_resource_group> \ --name <azure_cosmos_db_account_name>
Você verá uma seção de recursos semelhante a esta saída de exemplo:
"capabilities": [ { "name": "EnableMongo" } ]
Analise o recurso padrão. Neste exemplo, o único recurso definido é
EnableMongo
.Defina o novo recurso em sua conta de banco de dados. A lista de recursos deve incluir a lista de recursos habilitados anteriormente que você deseja manter.
Apenas os recursos explicitamente nomeados são definidos na sua conta. Por exemplo, se você quiser adicionar a
DisableRateLimitingResponses
capacidade ao exemplo anterior, use o comando az cosmosdb update com o--capabilities
parâmetro e liste todos os recursos que deseja ter em sua conta:az cosmosdb update \ --resource-group <azure_resource_group> \ --name <azure_cosmos_db_account_name> \ --capabilities EnableMongo DisableRateLimitingResponses
Importante
A lista de recursos deve sempre especificar todos os recursos que você deseja habilitar, inclusive. Isso inclui recursos que já estão habilitados para a conta que você deseja manter. Neste exemplo, o
EnableMongo
recurso já estava habilitado, portanto, você deve especificar o recurso e oDisableRateLimitingResponses
EnableMongo
recurso.Gorjeta
Se você estiver usando o PowerShell e uma mensagem de erro aparecer quando você usar o comando anterior, tente usar uma matriz do PowerShell para listar os recursos:
az cosmosdb update \ --resource-group <azure_resource_group> \ --name <azure_cosmos_db_account_name> \ --capabilities @("EnableMongo","DisableRateLimitingResponses")
Desativar uma funcionalidade
Recupere os recursos da sua conta existente usando
az cosmosdb show
:az cosmosdb show \ --resource-group <azure_resource_group> \ --name <azure_cosmos_db_account_name>
Você verá uma seção de recursos semelhante a esta saída de exemplo:
"capabilities": [ { "name": "EnableMongo" }, { "name": "DisableRateLimitingResponses" } ]
Verifique todos os recursos que estão definidos no momento. Neste exemplo, dois recursos são definidos:
EnableMongo
eDisableRateLimitingResponses
.Remova um dos recursos da sua conta de banco de dados. A lista de recursos deve incluir a lista de recursos habilitados anteriormente que você deseja manter.
Apenas os recursos explicitamente nomeados são definidos na sua conta. Por exemplo, se quiser remover a
DisableRateLimitingResponses
capacidade, use oaz cosmosdb update
comando e liste a capacidade que deseja manter:az cosmosdb update \ --resource-group <azure_resource_group> \ --name <azure_cosmos_db_account_name> \ --capabilities EnableMongo
Gorjeta
Se você estiver usando o PowerShell e uma mensagem de erro aparecer quando você usar esse comando, tente usar uma matriz do PowerShell para listar os recursos:
az cosmosdb update \ --resource-group <azure_resource_group> \ --name <azure_cosmos_db_account_name> \ --capabilities @("EnableMongo")
Próximos passos
- Saiba como usar o Studio 3T com o Azure Cosmos DB para MongoDB.
- Saiba como usar o Robo 3T com o Azure Cosmos DB para MongoDB.
- Explore exemplos do MongoDB com o Azure Cosmos DB para MongoDB.
- Tentando fazer o planejamento de capacidade para uma migração para o Azure Cosmos DB? Você pode usar informações sobre seu cluster de banco de dados existente para planejamento de capacidade.
- Se tudo o que você sabe é o número de vCores e servidores em seu cluster de banco de dados existente, saiba como estimar unidades de solicitação usando vCores ou vCPUs.
- Se você souber as taxas de solicitação típicas para sua carga de trabalho de banco de dados atual, saiba como estimar unidades de solicitação usando o planejador de capacidade do Azure Cosmos DB.