Я думаю, что с SQLite3, по крайней мере, он не хранит кэшированную страницу, потому что нет сервера, и каждая запись будет выходить из SQLite3, поэтому он не может делать кеширование напрямую.Как оценивать/тестировать скорость MySQL, Postgresql, MongoDB, где столько слоев кеша?
Но когда это MySQL, Postgresql или MongoDB, будет существовать слой, который, когда считается, диск.
И даже если он записан на диск, есть уровень ОС, который сохраняет секторы, которые должны быть записаны на диск.
И вот тогда кэш жесткого диска. При этом это 8 МБ, поэтому, возможно, когда тест вставляет данные, создающие базу данных 800 МБ, ошибка может быть 1% или меньше.
Но как насчет других слоев? На самом деле нужно полностью смыть уровень ОС. В противном случае, с компьютерами, имеющими 4 ГБ ОЗУ или 8 ГБ ОЗУ, вся база данных может легко находиться в ОЗУ, когда считается, что она довольно быстро. Как мы можем сказать, что тест полностью очистил данные до физического уровня жесткого диска или, по крайней мере, из уровня ОС?