Tôi đang chạy EXPLAIN (ANALYZE, BUFFERS) SELECT ...
trong máy chủ Postgres 9.3 của mình. Tôi cuối cùng thấy một cái gì đó như Buffers: shared hit=166416 dirtied=2
trong đầu ra.
Từ tài liệu , "bẩn" chỉ ra:
Số lượng khối bị bẩn cho biết số khối chưa được sửa đổi trước đó đã bị thay đổi bởi truy vấn này; trong khi số khối được viết chỉ ra số khối bị bẩn trước đó bị đuổi khỏi bộ đệm bởi phụ trợ này trong quá trình xử lý truy vấn.
Điều này đối với tôi như quá trình đánh dấu một khối bẩn chỉ nên xảy ra khi cập nhật dữ liệu. Truy vấn của tôi là SELECT
, tuy nhiên, và chỉ đọc dữ liệu. Tôi sẽ tưởng tượng nó sẽ chỉ báo cáo lượt truy cập hoặc đọc. Tôi rõ ràng là nhầm lẫn. Chính xác thì chuyện gì đang xảy ra trong tình huống này?