Linux
Mongodb副本集:為什麼我的主伺服器佔用的磁碟空間比我的從伺服器多?
我的副本集上有兩台伺服器。出於本次討論的目的,我們稱其為主機和從機。
master 是原來的那個,slave 是從那個 master 複製而來的。在複製的那一刻,它們佔用了大約相同的磁碟空間。
一個月後,這是目前的狀態。
掌握:
user@ines:/var/lib/mongodb$ ls -al total 44265576 drwxr-xr-x 4 mongodb mongodb 4096 Apr 22 14:40 . drwxr-xr-x 38 root root 4096 Jan 28 12:08 .. -rw------- 1 mongodb mongodb 67108864 Mar 31 15:23 admin.0 -rw------- 1 mongodb mongodb 134217728 Nov 29 12:33 admin.1 -rw------- 1 mongodb mongodb 16777216 Mar 31 15:23 admin.ns drwxr-xr-x 2 mongodb mongodb 4096 Apr 24 08:35 journal -rw------- 1 mongodb mongodb 67108864 Apr 17 10:33 local.0 -rw------- 1 mongodb mongodb 2146435072 Mar 31 11:21 local.1 -rw------- 1 mongodb mongodb 2146435072 Apr 24 11:02 local.2 -rw------- 1 mongodb mongodb 16777216 Apr 24 11:02 local.ns -rwxr-xr-x 1 mongodb mongodb 5 Apr 17 10:32 mongod.lock drwxr-xr-x 2 mongodb nogroup 4096 Apr 22 14:40 _tmp -rw------- 1 mongodb mongodb 67108864 Apr 24 10:39 tracking.0 -rw------- 1 mongodb mongodb 134217728 Apr 16 14:50 tracking.1 -rw------- 1 mongodb mongodb 2146435072 Apr 24 02:26 tracking.10 -rw------- 1 mongodb mongodb 2146435072 Apr 21 04:38 tracking.11 -rw------- 1 mongodb mongodb 2146435072 Apr 11 05:30 tracking.12 -rw------- 1 mongodb mongodb 2146435072 Apr 8 13:25 tracking.13 -rw------- 1 mongodb mongodb 2146435072 Apr 17 15:17 tracking.14 -rw------- 1 mongodb mongodb 2146435072 Apr 24 11:02 tracking.15 -rw------- 1 mongodb mongodb 2146435072 Apr 24 11:02 tracking.16 -rw------- 1 mongodb mongodb 2146435072 Apr 14 19:00 tracking.17 -rw------- 1 mongodb mongodb 2146435072 Apr 24 02:26 tracking.18 -rw------- 1 mongodb mongodb 2146435072 Apr 22 12:33 tracking.19 -rw------- 1 mongodb mongodb 268435456 Apr 16 14:50 tracking.2 -rw------- 1 mongodb nogroup 2146435072 Apr 24 11:00 tracking.20 -rw------- 1 mongodb nogroup 2146435072 Apr 24 11:01 tracking.21 -rw------- 1 mongodb nogroup 2146435072 Apr 22 14:40 tracking.22 -rw------- 1 mongodb mongodb 536870912 Apr 16 14:50 tracking.3 -rw------- 1 mongodb mongodb 1073741824 Apr 24 11:02 tracking.4 -rw------- 1 mongodb mongodb 2146435072 Apr 24 10:50 tracking.5 -rw------- 1 mongodb mongodb 2146435072 Apr 21 20:26 tracking.6 -rw------- 1 mongodb mongodb 2146435072 Apr 24 11:02 tracking.7 -rw------- 1 mongodb mongodb 2146435072 Apr 16 16:17 tracking.8 -rw------- 1 mongodb mongodb 2146435072 Apr 24 11:02 tracking.9 -rw------- 1 mongodb mongodb 16777216 Apr 24 11:02 tracking.ns
還有奴隸:
user@juliana:/var/lib/mongodb$ ls -al total 31688800 drwxr-xr-x 4 mongodb mongodb 4096 Apr 23 17:40 . drwxr-xr-x 37 root root 4096 Mar 31 16:04 .. -rw------- 1 mongodb mongodb 67108864 Mar 31 15:28 admin.0 -rw------- 1 mongodb mongodb 134217728 Mar 31 15:28 admin.1 -rw------- 1 mongodb mongodb 16777216 Mar 31 15:28 admin.ns drwxr-xr-x 2 mongodb mongodb 4096 Apr 24 10:04 journal -rw------- 1 mongodb mongodb 67108864 Apr 17 14:19 local.0 -rw------- 1 mongodb mongodb 2146435072 Apr 24 11:02 local.1 -rw------- 1 mongodb mongodb 2146435072 Apr 24 11:02 local.2 -rw------- 1 mongodb mongodb 16777216 Apr 24 11:02 local.ns -rwxr-xr-x 1 mongodb mongodb 5 Apr 17 14:19 mongod.lock drwxr-xr-x 2 mongodb nogroup 4096 Apr 23 17:40 _tmp -rw------- 1 mongodb mongodb 67108864 Apr 17 14:43 tracking.0 -rw------- 1 mongodb mongodb 134217728 Mar 31 15:30 tracking.1 -rw------- 1 mongodb mongodb 2146435072 Apr 24 11:02 tracking.10 -rw------- 1 mongodb mongodb 2146435072 Apr 24 11:02 tracking.11 -rw------- 1 mongodb mongodb 2146435072 Apr 24 02:26 tracking.12 -rw------- 1 mongodb nogroup 2146435072 Apr 24 11:02 tracking.13 -rw------- 1 mongodb nogroup 2146435072 Apr 24 05:40 tracking.14 -rw------- 1 mongodb nogroup 2146435072 Apr 24 11:02 tracking.15 -rw------- 1 mongodb nogroup 2146435072 Apr 23 17:40 tracking.16 -rw------- 1 mongodb mongodb 268435456 Mar 31 15:30 tracking.2 -rw------- 1 mongodb mongodb 536870912 Mar 31 15:30 tracking.3 -rw------- 1 mongodb mongodb 1073741824 Apr 24 10:39 tracking.4 -rw------- 1 mongodb mongodb 2146435072 Apr 15 17:18 tracking.5 -rw------- 1 mongodb mongodb 2146435072 Apr 21 03:56 tracking.6 -rw------- 1 mongodb mongodb 2146435072 Apr 24 10:55 tracking.7 -rw------- 1 mongodb mongodb 2146435072 Apr 21 20:26 tracking.8 -rw------- 1 mongodb mongodb 2146435072 Apr 24 11:02 tracking.9 -rw------- 1 mongodb mongodb 16777216 Apr 24 11:02 tracking.ns
這是正常的嗎?我怎樣才能回收“主人”正在浪費的空間?
謝謝你。
您應該查看該repairDatabase命令。
它阻塞了 mongod 不會提供流量
,所以在主/主節點上發出它之前,發出一個stepDown,另一個/輔助/從節點將接管流量。
原因:
- 兩台伺服器上的 Mongo 版本是否相同?
- 記錄填充:http ://docs.mongodb.org/v2.4/core/record-padding/
無填充分配策略
在 3.0.0 版中更改。
對於工作負載不會更改文件大小的集合,例如由僅插入操作或不增加文件大小的更新操作(例如遞增計數器)組成的工作負載,您可以使用 collMod 命令禁用 2 分配的冪帶有 noPadding 標誌或帶有 noPadding 選項的 db.createCollection() 方法。
在 3.0.0 版本之前,MongoDB 使用一種分配策略,其中包括動態計算的填充作為文件大小的一個因素。