Etapas de otimização pós-migração ao usar a API do Azure Cosmos DB para MongoDB

APLICA-SE A: MongoDB

Importante

Leia este guia completo antes de executar as etapas pós-migração.

Este guia pós-migração do MongoDB faz parte da série sobre migração do MongoDB. As etapas críticas de migração do MongoDB são pré-migração, migração e pós-migração, conforme mostrado abaixo.

Diagrama de etapas de migração.

Visão geral do pós-migração

Depois de migrar os dados armazenados na base de dados do MongoDB para a API do Azure Cosmos DB para o MongoDB, pode ligar-se ao Azure Cosmos DB e gerir os dados. Este guia fornece os passos que deve ter em conta após a migração. Consulte o tutorial Migrar o MongoDB para a API do Azure Cosmos DB para MongoDB para obter as etapas de migração.

Siga estas etapas para executar uma pós-migração

Nota

A única etapa pós-migração obrigatória é alterar a cadeia de conexão em seu aplicativo para apontar para sua nova conta do Azure Cosmos DB. Todas as outras etapas pós-migração são otimizações recomendadas para melhorar o desempenho da camada de dados. No entanto, se você executar a substituição do aplicativo imediatamente sem as outras etapas, seu aplicativo verá imediatamente o impacto de ter indexação e consistência não ideais. Especificamente, se você fizer uma transferência antes de configurar seus índices, o aplicativo poderá ver uma queda imediata de preço/desempenho. Lembre-se de que isso pode ser corrigido - uma vez que o índice é otimizado, esperamos que o Azure Cosmos DB muitas vezes supere a solução de status quo em preço/desempenho.

Pré-requisitos

Neste guia, assumimos que você está mantendo um registro do progresso da migração usando algum tipo de artefato de acompanhamento, como uma planilha. Se ainda não o fez, recomendamos que leia o guia de pré-migração para obter orientação sobre como criar uma planilha de migração de propriedade de dados, descobrir seus recursos existentes do MongoDB e planejar sua migração.

Otimizar a política de indexação

Para otimizar o preço e o desempenho, recomendamos que você percorra sua planilha de migração de patrimônio de dados e projete uma configuração de índice para cada recurso.

  1. Na verdade, recomendamos o planejamento de seus índices durante a fase de pré-migração. Adicione uma coluna à sua planilha de migração de propriedade de dados para configurações de índice.
    • O servidor Azure Cosmos DB para MongoDB versões 3.6 e superiores indexa automaticamente apenas o campo _id. Este campo não pode ser descartado. Ele impõe automaticamente a exclusividade do campo _id por chave de estilhaço. Para indexar campos adicionais, aplique os comandos de gestão de índices do MongoDB. Essa política de indexação padrão difere do Azure Cosmos DB para NoSQL, que indexa todos os campos por padrão.

    • Para o servidor Azure Cosmos DB para MongoDB versão 3.2, todos os campos de dados são indexados automaticamente, por padrão, durante a migração de dados para o Azure Cosmos DB. Em muitos casos, essa política de indexação padrão é aceitável. Em geral, a remoção de índices otimiza as solicitações de gravação e ter a política de indexação padrão (ou seja, indexação automática) otimiza as solicitações de leitura.

    • Os recursos de indexação fornecidos pelo Azure Cosmos DB incluem a adição de índices compostos, índices exclusivos e índices TTL (time-to-live). A interface de gerenciamento de índice é mapeada para o comando createIndex(). Saiba mais em Indexação no Azure Cosmos DB e Indexação na API do Azure Cosmos DB para MongoDB.

  2. Aplique essas configurações de índice durante a pós-migração.
    • O Serviço de Migração de Banco de Dados do Azure migra automaticamente coleções do MongoDB com índices exclusivos. No entanto, os índices exclusivos devem ser criados antes da migração. O Azure Cosmos DB não dá suporte à criação de índices exclusivos, quando já há dados em suas coleções. Para obter mais informações, consulte Chaves exclusivas no Azure Cosmos DB.

Distribua seus dados globalmente

O Azure Cosmos DB está disponível em todas as regiões do Azure em todo o mundo.

  1. Siga as orientações no artigo Distribuir dados globalmente na API do Azure Cosmos DB para MongoDB para distribuir globalmente seus dados. Depois de selecionar o nível de consistência padrão para sua conta do Azure Cosmos DB, você pode associar uma ou mais regiões do Azure (dependendo de suas necessidades de distribuição global). Para alta disponibilidade e continuidade de negócios, recomendamos sempre a execução em pelo menos 2 regiões. Você pode revisar as dicas para otimizar o custo de implantações de várias regiões no Azure Cosmos DB.

Definir nível de consistência

O Azure Cosmos DB oferece 5 níveis de consistência bem definidos. Para ler sobre o mapeamento entre os níveis de consistência do MongoDB e do Azure Cosmos DB, leia Níveis de consistência e APIs do Azure Cosmos DB. O nível de consistência padrão é o nível de consistência da sessão. Alterar o nível de consistência é opcional e você pode otimizá-lo para seu aplicativo. Para alterar o nível de consistência usando o portal do Azure:

  1. Vá para a folha Consistência padrão em Configurações.
  2. Selecione o seu nível de consistência

A maioria dos usuários deixa seu nível de consistência na configuração de consistência de sessão padrão. No entanto, há compensações de disponibilidade e desempenho para vários níveis de consistência.

Conecte ou remova seu aplicativo

O processamento de corte ou conexão de seu aplicativo permite que você alterne seu aplicativo para usar o Azure Cosmos DB assim que a migração for concluída. Siga os passos abaixo:

  1. Numa nova janela, inicie sessão no portal do Azure.
  2. No portal do Azure, no painel esquerdo, abra o menu Todos os recursos e localize a conta do Azure Cosmos DB para a qual você migrou seus dados.
  3. Abra a folha Cadeia de conexão . O painel do lado direito contém todas as informações de que precisa para se ligar com êxito à sua conta.
  4. Use as informações de conexão na configuração do seu aplicativo (ou em outros locais relevantes) para refletir a conexão da API do Azure Cosmos DB para MongoDB em seu aplicativo. A captura de tela mostra as configurações de uma Cadeia de Conexão.

Para obter mais detalhes, consulte a página Conectar um aplicativo MongoDB ao Azure Cosmos DB .

Sintonize para um desempenho ideal

Um fato conveniente sobre indexação, distribuição global e consistência - todos eles podem ser facilmente configurados e reconfigurados como você achar melhor. Portanto, assim que terminar a transferência do aplicativo, recomendamos que você monitore o desempenho do aplicativo e ajuste essas configurações conforme necessário para atender aos requisitos do aplicativo.

Próximos passos