Да, это может работать.На каком уровне он будет работать - это скорее «Это зависит»
Главное, чтобы ваш рабочий набор мог поместиться в оперативной памяти.Так, если у вас есть 16 ГБ ОЗУ и 20 ГБ базы данных (включая индексы), например, если вам нужно получить доступ только к половине всех данных, так как другая половина устарела / фактически не запрошена, то все будет в порядке, как только половинабаза данных должна быть в ОЗУ (10 ГБ).
Рабочий набор является ключевым здесь.Например, если у вас есть приложение для ведения журналов, которое выводит данные в MongoDB, возможно, ваш рабочий набор представляет собой объем данных (и индексов) за последние 3 месяца и что все данные до этого не доступны.
Когда ваш рабочий набор превышает объем ОЗУ, он продолжает работать, но с заметно сниженной производительностью, так как тогда все равно придется постоянно обращаться к диску, который гораздо менее производителен.Если вы находитесь в ситуации превышения ограничений ОЗУ на машине, то здесь вступает в игру шардинг - так что вы можете сбалансировать данные на нескольких машинах, увеличивая объем данных, которые можно хранить в ОЗУ.