Ich bin neugierig auf die Rolle, die der geteilte Puffer in Postgres spielt. Shared Buffer verwaltet alle zuletzt aufgerufenen Festplattenseiten und fehlerhaften Seiten. Wenn eine neue Seite eingefügt werden muss und im gemeinsam genutzten Puffer kein Speicherplatz mehr vorhanden ist, wird eine beschädigte Seite eines Opfers auf den Datenträger zurückgeschrieben.
Allerdings bin ich verwirrt über diese Aussage- PostgreSQL hängt vom Betriebssystem zum Zwischenspeichern ab. (http://www.varlena.com/GeneralBits/Tidbits/perf.html#shbuf) "
Wie hängt Postgres vom Betriebssystem für das Zwischenspeichern ab? Und wie ändert es das Verhalten des geteilten Puffers?
Postgresql verwendet den Betriebssystemcache und seinen eigenen Datencache. Die beiden sind entsprechend Ihrer Datenbanknutzung nützlich.
OS-Cache ist sehr schnell, aber einfach: Er entfernt ältere Daten mit der neuen. Es ist nützlich für sehr vielseitige Abfrageergebnisse. Der PG-Cache ist langsamer (immer noch viel schneller als die Festplatte), aber er verwendet Nutzungszähler der am häufigsten verwendeten Daten. Nützlich für wiederkehrende Ergebnisse / Index.
Ich denke dieser Link ist übersichtlicher (und aktueller).
Meines Wissens ist es so, dass PostgreSQL-Prozesse funktionieren und Informationen teilen, aber ab einer gewissen Grenze (15% bis 25% des Server-RAM) ist es interessanter, mehr RAM dem Betriebssystem zu überlassen, um Caching selbst durchzuführen .
Tags und Links postgresql