PG17 PGSizer English (EN)

Công bố hoa hồng liên kết (PGSizer): Nhấp qua liên kết đối tác /go/ trên PGSizer có thể mang lại hoa hồng giới thiệu cho trang mà không tăng chi phí của bạn. Biểu phí tra cứu ngày 2026-11-12. Xem Tuyên Bố PGSizer →

PGSIZER METHODOLOGY // TÀI LIỆU CHÍNH THỨC POSTGRESQL 17

Công Thức Định Cỡ Bộ Đệm PostgreSQL 17, PgBouncer & NVMe Trên PGSizer

Trong mô hình toán học xác định của PGSizer, chúng tôi tính toán mọi tham số dựa trên cơ chế quản lý trang 8KB của PostgreSQL 17, bộ đệm nhân Linux và bảng giá niêm yết công khai ngày 2026-11-12 — hoàn toàn không bịa đặt số liệu đo lab khi chưa có tệp log thực nghiệm.

1. Phương Trình Tập Dữ Liệu Nóng & shared_buffers Trên PGSizer

Chúng tôi xác định tổng RAM dựa trên tỷ lệ nhánh chỉ mục B-Tree/HNSW cần giữ thường trực trong bộ nhớ cộng với dung lượng tiến trình kết nối và vùng an toàn hệ điều hành:

RAM_Needed_GB = (Dataset_GB * Working_Set_Ratio) + Connection_Fork_RAM + OS_WAL_Guard
OLTP SaaS = 0.22 | Fintech Ledger = 0.28 | Analytical BI = 0.32 | PostGIS/pgvector = 0.42
shared_buffers = 25% RAM (30% Hybrid) | effective_cache_size = 75% RAM

2. Giới Hạn An Toàn work_mem Khi Gộp Kết Nối Bằng PgBouncer Trên PGSizer

Mỗi phép sắp xếp hoặc Hash Join có thể cấp phát một vùng work_mem riêng. Nhờ PgBouncer gom kết nối ứng dụng ở chế độ transaction, PGSizer giới hạn chặt số tiến trình hoạt động đồng thời:

Safe_Sort_Pool_MB = Total_RAM_MB * 0.22
work_mem = clamp((Safe_Sort_Pool_MB / Active_Concurrent_Sort_Slots) * Workload_Factor, 4MB, 256MB)

3. Dự Phòng 25% Không Gian Trống NVMe Cho MVCC, WAL & VACUUM Trên PGSizer

Ổ cứng SSD NVMe bị giảm tốc độ ghi nếu lấp đầy quá 80% và khiến pg_repack thiếu chỗ trống. Công thức PGSizer luôn cộng thêm 25% dung lượng dự phòng an toàn:

NVMe_Disk_GB = ceil(((Dataset_GB * Disk_Overhead_Factor) + WAL_Archive_GB) * 1.25)
random_page_cost = 1.1 | io_combine_limit = '128kB'

Mở Trình Sinh postgresql.conf Của PGSizer →