MongoDB.local SF, Jan 15: See the speaker lineup & ship your AI vision faster. Use WEB50 to save 50%
Find out more >
Menu Docs
Página inicial do Docs
/
MongoDB Mongosync
/

Dimensionamento do oplog

O programamongosync do utiliza 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 intervalo de tempo oplog.

mongosync aplica operações em oplog no cluster de origem aos dados no cluster de destino. Quando as operações que mongosync não aplicaram rolem do oplog no cluster de origem, a sincronização falha e o mongosync sai.

Observação

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

Durante a sincronização inicial, mongosync pode aplicar operações em uma taxa mais lenta devido à cópia de documentos simultaneamente. Após a sincronização inicial, mongosync aplica alterações mais rapidamente e tem maior probabilidade de manter uma posição no oplog próxima às gravações em tempo real que ocorrem no cluster de origem.

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 oplogSizeMB para aumentar o tamanho do oplog no cluster de origem.

1

Para obter a diferença em segundos entre a primeira e a última entrada no oplog execute db.getReplicationInfo(). 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 janela oplog . Use replSetResizeOplog para definir minRetentionHours maior que a janela oplog atual.

  • 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.

Voltar

Expressões regulares

Nesta página