Tôi đang quản trị một máy chủ nơi một công cụ sử dụng PostgreSQL chạy. Công cụ này tự xử lý hầu hết các cấu hình PostgreSQL, nhưng tôi đang quan sát một số vấn đề về hiệu năng. Tôi có thể xác nhận ở cấp hệ điều hành rằng có rất nhiều I / O đang diễn ra , do đó tôi nghi ngờ rằng có rất nhiều lỗi nhớ cache đang diễn ra.
Nếu bạn tìm kiếm "cache miss" hoặc "cache miss postgresql" hoặc các tìm kiếm tương tự trên Internet, bạn sẽ tìm thấy rất nhiều tài liệu tham khảo về " thống kê cache_miss ". Nhưng không nơi nào được giải thích làm thế nào để có được chúng! Tôi hiểu rằng giá trị đó phải được tính trừ các lần truy cập khỏi các lần tìm nạp . Nhưng vì tôi không có quản trị viên DB có kinh nghiệm , tôi thực sự không hiểu với các giá trị có nghĩa là: -S
Tôi đã tìm thấy tài liệu PostgreSQL - Giám sát hoạt động cơ sở dữ liệu, nhưng tôi không chắc liệu công thức sau đây có phải là tất cả những gì tôi cần không:
cache_miss = "result_of" pg_stat_get_db_blocks_fetched(oid) - "result_of" pg_stat_get_db_blocks_hit(oid)
Một lời giải thích cho người giả sẽ được đánh giá cao.
Cảm ơn bạn trước!