Menu Docs
Página inicial do Docs
/
Manual do MongoDB
/ /

Versionamento de documentos e esquemas

Nesta página

  • Casos de uso
  • Tarefas
  • Saiba mais

Conforme o tempo passa, seu esquema pode precisar ser alterado para atender às mudanças nos requisitos técnicos. Quando o esquema é alterado, você pode usar padrões de design de esquema para manter a estrutura original do documento. Ao reter versões históricas de documentos e esquemas, você evita migrações de esquema que exigem muito desempenho e tempo de inatividade.

Use os padrões de controle de versão quando seus requisitos de dados mudarem e você quiser manter os dados históricos em sua forma original. Os padrões de controle de versão são mais úteis quando seu aplicação atende a qualquer uma destas condições:

  • O tempo de inatividade do aplicativo não é uma opção para migração.

  • A atualização de documentos para o novo esquema pode levar horas, dias ou semanas para ser concluída.

  • Atualizar documentos para o novo esquema não é um requisito.

Os padrões de controle de versão ajudam a decidir como as migrações de dados ocorrem e fornecem mais flexibilidade em relação aos bancos de dados tabulares.

Considere estes casos de uso de aplicação específicos para padrões de controle de versão:

  • Uma seguradora permite que os clientes modifiquem sua apólice para garantir itens adicionais. Quando um cliente altera sua apólice, a seguradora mantém um registro das alterações da apólice. A empresa usa o padrão Document Versioning para controlar revisões na apólice, armazenando cada atualização em um documento separado. Os dados históricos são armazenados em uma coleção separada e não afetam as queries aos dados atuais.

  • Uma empresa armazena informações de contato do cliente. No esquema original, vários métodos de contato como homePhone, cellPhone e email são armazenados em campos individuais. Com o tempo, menos clientes têm números homePhone , então a empresa modifica o esquema para mover as informações de contato para um documento contacts genérico, que tem subcampos variáveis. Após a alteração do esquema, a empresa implementa o padrão de versionamento de esquema e adiciona um campo schemaVersion para informar ao aplicativo como ele deve consultar cada documento.

Para saber como manter um histórico das alterações de documentos e esquemas, consulte estas páginas:

  • Mantenha um histórico das versões dos documentos

  • Manter diferentes versões de esquema

Voltar

Padrão de herança