In our environment, OS cache is much bigger than postgres buffers. Postgres buffers around 8 GB, OS cache more than 100 GB. Maybe we should inspect pgfincore
----- Mensaje original ----- > De: "Soni M" <diptatapa@gmail.com> > Para: pgsql-performance@postgresql.org > Enviados: Miércoles, 6 de Septiembre 2017 5:12:26 > Asunto: [PERFORM] OS cache management > > Hello All, I would like to know about how OS cache works for postgres table > and index file. > > Let's say I have 10 year data, and commonly used data only the last 1 year. > This data is quite big, so each table and index file is divided into > several file in PGDATA/base > > Let's say 1 index named order_by_date has relfilenode = 1870772348, and > it's file consist of 1870772348, 1870772348.1, and 1870772348.2 > > And for oftenly queried 1 year data, do ALL files for the order_by_date > pushed to OS cache ? or it's just 1 file that contains index to this 1 year > data. >
Postgres has its own cache (defined by the "shared_buffers" variable). Usually, the unit of movement in and out from the cache is a 8k page (defined at compilation time), so you cant put it directly in terms of files.