Я использую MongoDB 2.4, и когда я запускаю mongo в первый раз, я получаю 9GB журнальных файлов на одном сервере, а на втором сервере я получаю только 0,5 ГБ файлы для ведения журнала. На первом сервере MongoDB занимает 5 минут, чтобы загрузить! а на втором - несколько секунд. Оба экземпляра не имеют данных и работают в первый раз. Каждый сервер работает независимо, и оба они не связаны друг с другом. На каждом сервере есть свои осколки (все осколки - 3 из них, находятся на одном сервере).Журналирование Mongodb - файлы очень большие
Что означает для каждого сервера у меня есть:
/usr/mongodb/bin/mongod --configsvr --dbpath /data/svr1 --port 27019
/usr/mongodb/bin/mongod --configsvr --dbpath /data/svr2 --port 27020
/usr/mongodb/bin/mongod --configsvr --dbpath /data/svr3 --port 27021
/usr/mongodb/bin/mongod --dbpath /data/db1 --port 27010
/usr/mongodb/bin/mongod --dbpath /data/db2 --port 27011
/usr/mongodb/bin/mongod --dbpath /data/db3 --port 27012
/usr/mongodb/bin/mongos --configdb localhost:27019,localhost:27020,localhost:27021
и сценарий, который создает черепки:
sh.addShard("localhost:27010");
sh.addShard("localhost:27011");
sh.addShard("localhost:27012");
sh.enableSharding("somescheme");
Я задавался вопросом, почему я получаю файлы 9ГБ для журналирования на 1-ый и 0,5 GB на втором? Первый имеет большой жесткий диск, а не SSD, второй - SSD и меньше. любые идеи? Спасибо !!!
Вы работаете с флагом smallfiles (либо в командной строке, либо в вашем .cfg) на вашем втором хосте? Когда включено, это уменьшает размер, выделенный для файлов журнала и данных. Еще одно замечание: MongoDB будет только предварительно распределять файлы журналов, если ваши экземпляры mongod решают, что было бы более эффективно это делать, а затем строить на лету. См. Это для получения дополнительной информации: http://docs.mongodb.org/manual/core/journaling/#journal-files –
нет, не работает с smallfiles conf на обоих из них. Я читал, что не рекомендуется запускать мелкие файлы, когда у вас есть большой объем данных на каждом узле, только если у вас много узлов с небольшим количеством данных для каждого. – user1986447
Правильно, единственный случай, который я видел для небольших файлов в производстве, - это когда вы используете большое количество небольших баз данных. Можете ли вы предоставить ls -l в обоих журнальных каталогах? Было бы интересно посмотреть размер и количество файлов. –