Para agentes de IA: um índice de documentação está disponível em https://www.mongodb.com/pt-br/docs/llms.txt — as versões de markdown de todas as páginas estão disponíveis anexando .md a qualquer caminho de URL.
Menu Docs

Dimensionamento do oplog

O programa mongosync usa change streams para sincronizar dados entre clusters de origem e destino. mongosync não acessa o oplog diretamente, mas quando um change stream retorna eventos do passado, os eventos devem estar dentro do oplog intervalo de tempo.

mongosync aplica operações em oplog no cluster de origem aos dados no cluster de destino após a fase de cópia da coleção. Quando as operações que mongosync não aplicaram roll off do oplog no cluster de origem, a sincronização falha e mongosync sai.

Observação

mongosync não replica operações feitas no cluster de origem durante a sincronização com o cluster de applyOps destino.

Se você antecipar a sincronização de um grande conjunto de dados ou se planeja pausar a sincronização por um longo período de tempo, poderá exceder a oplog window. Use a configuração para aumentar o tamanho oplogSizeMB do oplog no cluster de origem.

O cluster de destino deve ter armazenamento em disco suficiente para acomodar o tamanho lógico dos dados que estão sendo migrados e as entradas de oplog de destino da sincronização inicial. Por exemplo, para migrar 10 GB de dados, o cluster de destino deve ter pelo menos 10 GB disponíveis para os dados e outro 10 GB para as entradas de oplog de inserção da sincronização inicial.

Para usar a verificação incorporada, você deve ter um oplog maior no destino. Se você habilitar o verificador incorporado e reduzir o tamanho do oplog de destino, o verificador incorporado pode não conseguir acompanhar, causando erro em mongosync.

Se precisar reduzir a sobrecarga das entradas do oplog de destino e o verificador incorporado estiver desativado, você poderá:

  • Use a configuração para reduzir o tamanho do oplog do cluster de oplogSizeMB destino.

  • Use a configuração para reduzir ou remover o período mínimo de retenção de oplog do cluster de oplogMinRetentionHours destino.

1

Para obter a diferença em segundos entre a primeira e a última entrada no oplog db.getReplicationInfo()execute. Se você estiver replicando um cluster fragmentado, execute o comando em cada shard.

db.getReplicationInfo().timeDiff

O valor retornado é a janela oplog mínima do cluster. Se houver vários fragmentos, o menor número será a janela oplog mínima.

2

Para obter o valor lagTimeSeconds , execute o comando /progress . O tempo de atraso é o tempo em segundos entre o último evento aplicado por mongosync e a hora do evento mais recente atual no cluster de origem.

É uma medida de quão atrasado está o cluster de origem mongosync .

3

Se o tempo de atraso se aproximar da janela mínima de oplog , faça uma das seguintes alterações:

  • Aumente a oplog janela. Use para replSetResizeOplog definir minRetentionHours maior que a oplog janela atual.

    Observação

    replSetResizeOplog não é suportado no Atlas. Para redimensionar o oplog no Atlas, consulte Definir oplog window mínima.

  • Escale a instância mongosync . Adicione CPU ou memória para escalar o nó mongosync para que ele tenha uma taxa de cópia mais alta.

Observação

A oplog window e a taxa de alteração do atraso de replicação podem variar durante a sincronização. Repita essas etapas durante uma migração para monitorar o progresso.