I believe that op system side buffering can play a role too. I our case, the DB server (machine & op sys) caches data that it pulled from disk (not necessarily from a DB) and also the disk servers do the same. If a block was removed from the DB buffer cache to accommodate more recently requested data, but the evicted block is live in memory on the DB server or the disk server, it can pull from there instead of performing an expensive disk-IO.
I humbly defer to any out there with more knowledge about this than I. Just opening up this avenue for discussion. -dave ________________________________ From: pgsql-general-ow...@postgresql.org [mailto:pgsql-general-ow...@postgresql.org] On Behalf Of Siddharth Shah Sent: Monday, March 02, 2009 8:12 AM To: pgsql-general@postgresql.org Subject: [GENERAL] Shared Buffers Hello All, How Postgres Maintains data in Shared Buffer Does It maintains queried data in memory or table data and Next time how postgres fetch data from memory rather than disk Which algorithm is used for storing data how data is indexed in shared buffers Thanks Siddharth