Tamanho enorme do oplog após a sincronização completa em um secundário causando problemas de desempenho - MongoDB

1

Sou novato no MongoDB. Eu tenho uma réplica definida com 3 membros (1 primário e 2 secundários) no CentOS 6 e no Mongo 2.6.8.

Um dos secundários falhou devido ao alto consumo de memória e não consegui reiniciá-lo corretamente (devido a alguma corrupção de dados), por isso apaguei todo o conteúdo do datadir para forçar uma nova sincronização completa.

Após 4 horas, o secundário foi sincronizado e voltou ao conjunto de réplicas. No entanto, ele gerou 25 arquivos "locais" (local.0 ... local.24), enquanto costumava ser apenas 2 (como os outros membros), ocupando mais de 60 GB no disco apenas por causa desses arquivos.

Além disso, o tamanho do oplog mudou (costumava ser 990MB e agora são 47 GB):

rs: SECONDARY > rs.printReplicationInfo (); Tamanho configurado do oplog: 47774.441162109375MB comprimento do log do início ao fim: 579127secs (160.87hrs) oplog tempo do primeiro evento: ter 23 de junho de 2015 16:53:13 GMT + 0100 (IST) oplog última vez do evento: Ter Jun 30 2015 09:45:20 GMT + 0100 (IST) agora: Ter Jun 30 2015 09:45:20 GMT + 0100 (IST)

Desde que isso aconteceu, o servidor vem consumindo cerca de 130 GB de memória virtual e tem apresentado um desempenho muito ruim.

Eu tive que fazer uma sincronização completa no outro secundário também (por causa de problemas semelhantes) e nada mudou (ele gerou 2 arquivos "locais" e o tamanho do oplog ainda era 990MB).

Estou me perguntando:

  • Qual é o motivo desse comportamento do banco de dados "local"?

  • Por que esse comportamento afeta o desempenho se o banco de dados "local" não for replicado?

  • Existe uma maneira de alterar esse nó secundário de volta para como era (apenas 2 arquivos locais e um oplog menor)? Eu sei que é possível alterar o tamanho do oplog, mas eu estou querendo saber se eu poderia simplesmente parar o serviço, exclua os arquivos "locais" para que eles sincronizem novamente.

Quaisquer outras sugestões são mais que bem-vindas (:

    
por Alexandra Arreaza 30.06.2015 / 12:38

0 respostas