Moja baza danych ma rozmiar około 1 GB (zgodnie z plikiem mdf mojej bazy danych). Mój serwer bazy danych ma 4 GB pamięci RAM. Patrząc na zużycie pamięci na komputerze, gdy jest on aktywny, jest w około 85% używany (w tym system operacyjny itp.)
Czy to oznacza, że cała aktywność odczytu DB działa tylko w pamięci (tzn. Cała baza danych siedzi w pamięci)? czy jest jeszcze przypadek, w którym musiałby przejść na dysk?
Odpowiedzi:
Tak, cała baza danych jest prawdopodobnie przechowywana w pamięci. Spłukuje brudne strony na dysk w odstępach kontrolnych. Zauważ jednak, że wszystkie aktualizacje będą musiały zapisać do dziennika i poczekać, aż rekordy dziennika zostaną zahartowane na trwałym nośniku przed zatwierdzeniem. Ta stara papierowa podstawa We / Wy programu SQL Server 2000 zawiera wszystkie potrzebne informacje i jeszcze więcej.
Ale nie musisz zgadywać, możesz dokładnie to zmierzyć i sprawdzić, czy to się stanie, czy nie. Odpowiednimi licznikami wydajności są:
źródło
My database is about 1gb in size (according to the mdf file of my db). My database server has 4gb of ram.
. Jeśli chcesz uzyskać odpowiedź na tę sprawę, gdy masz 60 stron internetowych i jak działa buforowanie puli buforów w tym przypadku, zadaj to pytanie :)you don't have to guess, you can measure this exactly
.Cała baza danych (tj. Dane) nie byłaby przechowywana w pamięci (serwer sql). Po zbadaniu indeksów i / lub kluczy, pobierze wskaźnik do miejsca w pliku danych, którego szukasz, i prawdopodobnie pójdzie na dysk, aby go odzyskać. Jeśli nie ma kluczy ani indeksów, musiałby przeskanować całą stertę.
W zależności od używanej wersji programu SQL Server mogą istnieć strategie buforowania dobrze używanych danych w celu zminimalizowania odczytu płyt.
MOŻESZ uzyskać bazy danych w pamięci, np. Bazę danych MySql Cluster .... Zostało to zaprojektowane tak, aby zmieścić CAŁĄ bazę danych w pamięci w klastrze serwerów w celu zapewnienia wysokiej dostępności / odzyskiwania po awarii i szybkiego pobierania danych.
źródło