b'\n_START_ARTICLE_\nControle de concorr\xc3\xaancia multivers\xc3\xa3o\n_START_SECTION_\nImplementa\xc3\xa7\xc3\xa3o\n_START_PARAGRAPH_\nExistem v\xc3\xa1rias maneiras de resolver este problema, conhecidas como m\xc3\xa9todos de controle de concorr\xc3\xaancia. A forma mais simples \xc3\xa9 fazer com que todos os processos esperem at\xc3\xa9 que atualiza\xc3\xa7\xc3\xa3o esteja conclu\xc3\xadda. Este m\xc3\xa9todo \xc3\xa9 conhecido como bloqueio e pode fazer abrandar novos processos no banco de dados. _NEWLINE_Por conta disso, o m\xc3\xa9todo MVCC tem uma abordagem diferente: cada processo conectado ao banco de dados enxerga uma c\xc3\xb3pia tempor\xc3\xa1ria do banco de dados no instante do tempo que \xc3\xa9 execu\xc3\xadvel. Qualquer altera\xc3\xa7\xc3\xa3o que esteja sendo feita em determinado momento por um processo, n\xc3\xa3o ser\xc3\xa1 vista pelos demais processos operando no banco de dados, at\xc3\xa9 que as altera\xc3\xa7\xc3\xb5es tenham sido conclu\xc3\xaddas (ou, em termos de banco de dados: at\xc3\xa9 que a transa\xc3\xa7\xc3\xa3o tenha sido confirmada)._NEWLINE_Quando um banco de dados com MVCC precisar atualizar um determinado dado, ele n\xc3\xa3o ir\xc3\xa1 sobrescrever este dado com o novo dado, mas ao contr\xc3\xa1rio, marcar o dado antigo como obsoleto e adicionar a vers\xc3\xa3o mais recente em outro lugar. _NEWLINE_Desta forma, existem v\xc3\xa1rias vers\xc3\xb5es armazenadas, mas apenas uma \xc3\xa9 a \xc3\xbaltima. Isso permite que os processos (leitores do banco dados) acessem os dados que estavam l\xc3\xa1 quando eles come\xc3\xa7aram a ler, mesmo que este dado tenha sido modificado ou exclu\xc3\xaddo por outra processo. Este m\xc3\xa9todo tamb\xc3\xa9m permite que o banco de dados evite a sobrecarga, acumulando vazios na mem\xc3\xb3ria ou na estrutura do disco. Mas geralmente requer uma varredura peri\xc3\xb3dica do sistema para limpar e apagar os dados obsoletos. Para um banco de dados orientado a documentos, o m\xc3\xa9todo permite a otimiza\xc3\xa7\xc3\xa3o do sistema  escrevendo documentos inteiros em se\xc3\xa7\xc3\xb5es cont\xc3\xadguas de disco \xe2\x80\x93 quando atualizado, todo o documento pode ser reescrito, ao inv\xc3\xa9s de peda\xc3\xa7os e partes cortadas e mantidas vinculadas em uma estrutura de banco de dados n\xc3\xa3o cont\xc3\xadgua.'