Das Leeren von mmaps durch DataFileSync dauert lange

Das Leeren von mmaps durch DataFileSync dauert lange

Wir führen MongoDB 2.6.9 auf einer 64-Bit-Ubuntu-Linux-VM aus. Wenn ich in den Datenbankordner schaue, sehe ich mit ls -lh Folgendes:

-rw------- 1 mongodb mongodb  64M Apr 15 14:26 admin.0
-rw------- 1 mongodb mongodb  16M Apr 15 14:26 admin.ns
-rw------- 1 mongodb nogroup  64M Jun 17 11:56 my_database.0
-rw------- 1 mongodb nogroup 128M May  7 23:15 my_database.1
-rw------- 1 mongodb nogroup 256M Jun 15 07:40 my_database.2
-rw------- 1 mongodb nogroup 512M May 14 07:26 my_database.3
-rw------- 1 mongodb nogroup 1.0G Jun 10 09:26 my_database.4
-rw------- 1 mongodb nogroup 2.0G Jun  2 11:25 my_database.5
-rw------- 1 mongodb nogroup 2.0G Jun 17 12:03 my_database.6
-rw------- 1 mongodb nogroup 2.0G Jun 17 12:03 my_database.7
-rw------- 1 mongodb nogroup 2.0G Jun 17 12:03 my_database.8
-rw------- 1 mongodb nogroup  16M Jun 17 12:03 my_database.ns
drwxr-xr-x 2 mongodb mongodb 4.0K Jun 16 13:16 journal
-rw------- 1 mongodb mongodb  64M Jun 16 13:16 local.0
-rw------- 1 mongodb mongodb  16M Jun 16 13:16 local.ns
-rwxr-xr-x 1 mongodb mongodb    5 Jun 16 13:16 mongod.lock

Wir haben also ein paar 2 GB große Dateien. Das Problem ist jedoch, dass wir regelmäßig eine Protokollmeldung wie diese erhalten:

2015-06-12T18:10:01.790-0700 [DataFileSync] flushing mmaps took 62192ms  for 14 files

Während dieser Zeit hängt sich MongoDB auf und alle Abfragen schlagen fehl.

Wie beheben wir dieses Problem?

verwandte Informationen