Моя база данных составляет около 1 ГБ (в соответствии с файлом mdf моего БД). Мой сервер базы данных имеет 4 ГБ оперативной памяти. Если посмотреть на потребление памяти на компьютере, когда он активен, он используется примерно на 85% (включая ОС и т. Д.)
Означает ли это, что все операции чтения БД работают только в памяти (т. Е. Весь БД находится в памяти)? или есть еще случай, когда он должен был бы пойти на диск?
Ответы:
Да, вся база данных, скорее всего, хранится в памяти. Он будет сбрасывать грязные страницы на диск с интервалами контрольных точек. Учтите, однако, что все обновления должны будут записываться в журнал и ждать, пока записи журнала будут надежно закреплены в долговременном хранилище, прежде чем выполнять фиксацию. Эта старая бумажная Основа ввода / вывода SQL Server 2000 содержит все детали, которые вам когда-либо понадобятся, и даже больше.
Но вам не нужно угадывать, вы можете точно измерить это и посмотреть, произойдет это или нет. Соответствующие счетчики производительности:
источник
My database is about 1gb in size (according to the mdf file of my db). My database server has 4gb of ram.
. Если вы хотите получить ответ для случая, когда у вас есть 60 веб-сайтов и как работает кэширование пула буферов, задайте этот вопрос :)you don't have to guess, you can measure this exactly
.Вся БД (т.е. данные) не будет храниться в памяти (сервер sql). После изучения индексов и / или ключей он извлечет указатель на то, где в файле данных находятся искомые данные, и, скорее всего, затем отправится на диск для его извлечения. Если нет ключей или индексов, придется сканировать всю кучу.
В зависимости от того, какую версию SQL Server вы используете, могут существовать стратегии для кэширования хорошо используемых данных, чтобы минимизировать чтение с диска.
Вы МОЖЕТЕ получить базы данных в памяти, например, базу данных MySql Cluster .... Это разработано, чтобы поместить всю базу данных в память на кластере серверов для обеспечения высокой доступности / аварийного восстановления и быстрого извлечения данных.
источник