Можно ли удалить кеш в Монго? - PullRequest
0 голосов
/ 30 мая 2018

В моем случае я запускаю несколько запросов в Mongo и измеряю время отклика.Я знаю, что Mongo использует файлы Memory Mapped и кэширует некоторые данные в ОЗУ.

Если я создаю индекс и выполняю запрос, время выполнения составляет 2,07 секунды.Когда я снова запускаю запрос, время выполнения составляет 0,017 секунды.

Это означает, что файл отображается в памяти ОС при первом доступе, и ОС будет хранить его в кэше, пока не решит вывести его на страницу.,

Поскольку я хочу сделать некоторые тесты, я хочу каким-то образом удалить сопоставленные результаты из памяти.

free -g:

               total       used       free     shared    buffers     cached

Mem:            29          29          0          0          0         29
-/+ buffers/cache:          0         29
Swap:            0          0          0

Я пытаюсь db.collection.getPlanCache().clear(), но это не работает.

Затем я пытаюсь:

sudo service mongod stop

Я перезагружаю свою машину

sync; echo 3 > /proc/sys/vm/drop_caches
sudo service mongod start

Свободно -g:

               total       used       free     shared    buffers     cached

Mem:            29          0          0          0          0         0
-/+ buffers/cache:          0         29
Swap:            0          0          0

Выше кажется, что кеш теперь свободен.Но при повторном выполнении запроса время выполнения составляет 0,017 секунды.Кажется, Монго удалось где-то кешировать или сохранить данные.При очистке кеша желаемое время выполнения составит 2,07 секунды.

Также mongostat дает:

insert query update delete getmore command flushes mapped  vsize   res faults qr|qw ar|aw netIn netOut conn set repl     time
*0    *0     *0     *0       0     1|0       0 124.0G 248.9G 27.7G      1   0|0   0|0   79b    11k   13 rs0  PRI 12:37:06
*0    *0     *0     *0       1     5|0       0 124.0G 248.9G 27.7G      0   0|0   0|0  687b    11k   13 rs0  PRI 12:37:07
*0    *0     *0     *0       2     1|0       0 124.0G 248.9G 27.7G      0   0|0   0|0  173b    11k   13 rs0  PRI 12:37:08
*0    *0     *0     *0       1     5|0       0 124.0G 248.9G 27.7G      0   0|0   0|0  687b    11k   13 rs0  PRI 12:37:09
*0    *0     *0     *0       0     1|0       0 124.0G 248.9G 27.7G      0   0|0   0|0   79b    11k   13 rs0  PRI 12:37:10

Может кто-нибудь сказать мне, как я могу на самом деле удалить кэшированные результаты вМонго?

...