Tôi đã aksed this question in mongodb google group, trong trường hợp không có bất kỳ trả lời gửi nó ở đây.Bao nhiêu không gian bổ sung sẽ sửa chữa cơ sở dữ liệu yêu cầu
Chúng tôi có một phiên bản nút đơn mongo (phiên bản 2.0.1). Chúng tôi đang chạy ra khỏi không gian đĩa ngay cả sau khi lưu trữ hàng ngày như mongo không trả lại không gian trở lại hệ điều hành và cố gắng sử dụng nó chính nó. Hiện tại, thiết lập của chúng tôi đã trở nên rất thưa thớt với khoảng 50% không gian nằm ở chế độ chờ. Bạn có thể thấy rằng dữ liệu + kích thước chỉ mục là khoảng 1170 GB trong khi dung lượng lưu trữ là khoảng 2158 GB và kích thước tệp là khoảng 2368 GB.
db.stats()
{
"db" : "default",
"collections" : 106,
"objects" : 553988389,
"avgObjSize" : 2094.1392962010254,
"dataSize" : NumberLong("1160128855044"),
"storageSize" : NumberLong("2315777236208"),
"numExtents" : 1487,
"indexes" : 107,
"indexSize" : 97914435136,
"fileSize" : NumberLong("2543459500032"),
"nsSizeMB" : 16,
"ok" : 1
}
Chúng tôi muốn đòi lại không gian và vì đây không phải là hệ thống nhiệm vụ quan trọng (giống như bãi rác cho các khúc gỗ) có thể duy trì thời gian chết. Chúng tôi không muốn chi tiêu vào việc tạo ra một bản sao thiết lập cũng chúng tôi đang ở trong một trung tâm dữ liệu vật lý do đó sẽ không thích đính kèm đĩa bổ sung chỉ để sửa chữa cơ sở dữ liệu.
Tôi muốn hiểu: -
-Doanh không gian đĩa miễn phí là cần thiết cho cơ sở dữ liệu sửa chữa
-Làm thế nào nhiều không gian chúng ta có thể hy vọng sẽ phục hồi sau khi cơ sở dữ liệu sửa chữa
-Around bao nhiêu thời gian nó cần thực hiện để sửa chữa cơ sở dữ liệu.
-Nếu ở tất cả các cơ sở dữ liệu sửa chữa vẫn tiếp diễn, có an toàn khi chỉ cần giết nó và khởi động lại cơ sở dữ liệu.
Số lượng lớn dữ liệu của chúng tôi nằm trong một bộ sưu tập duy nhất để liệu bộ sưu tập nhỏ gọn có tốt hơn cơ sở dữ liệu sửa chữa hay không.
Repair có thể yêu cầu lên đến không gian 2X. –
2X kích thước dữ liệu hoặc dung lượng lưu trữ? – pseudonym
Sửa chữa sẽ làm một '' mongodump'' và '' mongorestore'' và cho rằng nó đòi hỏi hai lần không gian đĩa cơ sở dữ liệu của bạn đang sử dụng tức là nó cần không gian để lưu trữ các tệp cơ sở dữ liệu cũ và mới. Để tránh điều đó, bạn có thể tự làm một '' mongodump'', xóa các tệp cơ sở dữ liệu và sau đó chạy '' mongorestore''. Ngoài ra, nếu bạn chỉ cần đòi lại không gian không sử dụng, bạn có thể chạy '' compact'' (chắc chắn rằng bạn có 2GB dung lượng trống). – diliop