Я выполнил «mongodump» на кластере из 3 сегментов для базы данных размером 600 ГБ и порциями, равномерно распределенными по всем 3 сегментам.
Моя команда mongodump была такой:
mongodump --db mydb123 --authenticationDatabase admin --journal -u root -p password123 -o mydb123
Чанки были распределены по всем трем шардам примерно одинаково. ++++++++++++++++++++++++++++++++++++++++++++++++++ +++++++++++++
Затем я переместил файл дампа в новый кластер и выполнил «mongorestore» этого файла дампа на новом кластере с двумя сегментами. Размер этой базы данных сейчас составляет всего 80 ГБ. Думаю, это ожидаемо (компактное действие). Но вот моя проблема: в новом кластере с двумя сегментами выполнение команды «sh.status ()» не показывает ЧАНКИ для этой базы данных. Моя команда mongorestore была такой:
mongorestore -u root -p newpass123 --authenticationDatabase admin --verbose / data / db / backups / new_dir / mydumpfile
+++++++++++++++++++++++++++++++++++ При выполнении этой команды mongorestore не было ошибок. Фактический результат SH.STATUS () показан ниже:
mongos> sh.status () --- Статус сегментирования --- версия сегментирования: {"_id": 1, "version": 3, "minCompatibleVersion": 3, "currentVersion": 4, "clusterId": ObjectId (" 52efaaa0a83668acafc3bcb0 ")} шарды: {" _id ":" sh1 "," host ":" sh1 / hfdvmprmongodb1: 27000, hfdvmprmongodb2: 27000 "} {" _id ":" sh2 "," host ":" sh2 / hfdv00 " , hfdvmprmongodb2: 27001 "} базы данных: {" _id ":" admin "," partitioned ": false," primary ":" config "} {" _id ":" test "," partitioned ": false," primary ": "sh1"} {"_id": "цена", "partitioned": true, "primary": "sh2"} {"_id": "mokshapoc", "partitioned": true, "primary": "sh1"}
mongos> isBalancerRunning () Вт, 4 февраля 11: 09: 39.242 ReferenceError: isBalancerRunning не определен mongos> sh.isBalancerRunning () true
++++++++++++++++++++++++++++++++++++++++++++++++++ ++ Итак, я полностью завершил mongorestore и не показывал ЧАНКИ для базы данных 80 ГБ (которая раньше была базой данных 600 ГБ во время выполнения mongodump)
Меня очень смущает тот факт, что я не вижу никаких кусков. (размер ожидался меньше, да и намного меньше)
версия на обоих кластерах одинакова: версия оболочки MongoDB: 2.4.6
Спасибо, vr
mongorestore
?mongorestore
не изменяет никаких параметров сегментирования для целевой базы данных, поэтому отсутствие фрагментов может быть связано с тем, что ваша цель не сегментирована. - person Stennie   schedule 05.02.2014