MongoDB
 sql >> Base de Dados >  >> NoSQL >> MongoDB

O MongoDB pode funcionar quando o tamanho do banco de dados é maior que a RAM?


Sim pode funcionar. Até que nível ele irá executar é mais um "Depende"

O principal é garantir que seu conjunto de trabalho pode caber na RAM. Portanto, se você tiver 16 GB de RAM e 20 GB de banco de dados (incluindo índices), por exemplo, se precisar acessar apenas metade de todos os dados, pois a outra metade é mais antiga/nunca realmente consultada, você ficará bem, pois apenas metade de seus banco de dados precisa estar na RAM (10 GB).

Conjunto de trabalho é a chave aqui. Por exemplo, se você tiver um aplicativo de log sendo enviado para o MongoDB, pode ser que seu conjunto de trabalho seja a quantidade de dados (e índices) dos últimos 3 meses e que todos os dados anteriores não sejam acessados.

Quando seu conjunto de trabalho exceder a quantidade de RAM, ele continuará funcionando, mas com desempenho visivelmente degradado, pois as coisas terão que ir constantemente para o disco, que é muito menos eficiente. Se você está nessa situação de exceder as restrições de RAM em uma máquina, é aí que o sharding entra em ação - para que você possa equilibrar os dados em várias máquinas, aumentando assim a quantidade de dados que podem ser mantidos na RAM.