é melhor pesquisar isso no Google, mas muitas fontes dizem que quando seu conjunto de trabalho supera o tamanho da RAM, o desempenho diminui significativamente.
A fragmentação pode ser uma opção interessante, em vez de adicionar mais RAM.
http://www.mongodb.org/display/DOCS/Checking +Servidor+Memória+Uso
http://highscalability.com/blog/2011/9/13/must-see-5-steps-to-scaling-mongodb-or-any-db-in-8-minutes.html
http://blog.boxedice. com/2010/12/13/mongodb-monitoring-keep-in-it-ram/
http://groups.google.com/group/mongodb-user /browse_thread/thread/37f80ff39258e6f4
O MongoDB pode funcionar quando o tamanho do banco de dados maior que a RAM?
O que significa encaixar "conjunto de trabalho" na RAM para MongoDB?
Você também pode querer ler sobre a interrupção do 4square no ano passado:
http://highscalability.com/blog/2010/10/15/troubles-with-sharding-what-can-we-learn-from-the-foursquare.html
http://groups.google.com/group/mongodb-user /browse_thread/thread/528a94f287e9d77e
http://blog.foursquare.com/ 2010/10/05/so-que-foi-uma-vagabunda/
nota:
você disse "swap is off"...? porque? Você deve sempre ter um espaço de troca suficiente em um sistema UNIX! Swap-size =1...2 vezes o tamanho da RAM é uma boa ideia. Usar uma partição rápida é uma boa ideia. Coisas realmente ruins acontecem se o seu sistema UNIX ficar sem RAM e não tiver Swap .. processos simplesmente morrem inexplicavelmente .. isso é uma coisa muito ruim! especialmente na produção. Disco é barato! adicione uma partição swap generosa! :-)