Для MongoDB версии 3.2 включено, WiredTiger является механизмом хранения по умолчанию.
WiredTiger выполняет блокировку на уровне документа. Это уменьшает замки. Кроме того, он позволяет одновременно считывать или обновлять несколько документов в коллекции.
Механизм хранения WiredTiger - это значительное улучшение по сравнению с MMAPv1 по производительности и параллелизму. Он также предлагает преимущества сжатия и шифрования.
По умолчанию MongoDB резервирует 50 процентов доступной памяти для кэша данных WiredTiger. Размер этого кэша важен для обеспечения адекватной работы WiredTiger. Хорошее практическое правило заключается в том, что размер кэша должен быть достаточно большим, чтобы вместить весь рабочий набор приложения.
db.serverStatus().wiredTiger.cache
wiredTiger.cache.maximum
настроенных байтов: это максимальный размер кэша.
wiredTiger.cache.bytes
в данный момент в кеше - это размер данных, находящихся в данный момент в кеше. Это не должно быть больше, чем настроенные максимальные байты.
wiredTiger.cache.tracked
грязных байтов в кэше - это размер грязных данных в кэше. Это значение должно быть меньше, чем байты, которые в настоящее время находятся в значении кэша.
Глядя на эти значения, мы можем определить, нужно ли увеличивать размер кэша для нашего экземпляра. Кроме того, мы можем взглянуть на значение wiredTiger.cache.bytes
read to cache для приложений с интенсивным чтением. Если это значение постоянно высокое, увеличение размера кэша может улучшить общую производительность чтения.