Đối với PostgreSQL, sức mạnh của CPU có thể rất phù hợp, đặc biệt là nếu tỷ lệ khá cao của bộ dữ liệu hoạt động tích cực của dữ liệu của bạn phù hợp với RAM. Hầu hết các cơ sở dữ liệu tôi đã làm việc cùng có sức mạnh CPU là nút cổ chai chính trong hầu hết thời gian. (Tôi vừa kiểm tra vmstat trên một máy chủ lưu trữ các trang web với hàng triệu lượt truy cập mỗi ngày lưu trữ trên 5TB dung lượng cơ sở dữ liệu và tôi chưa bao giờ thấy thời gian chờ đĩa quá 2%, nhưng đã thấy thời gian CPU của người dùng cao nhất là 12%.)
Do PostgreSQL dựa trên quy trình, nên bất kỳ quy trình đơn lẻ nào cũng chỉ có thể chạy nhanh như một lõi, nhưng trong một hỗn hợp như chúng ta có trên máy chủ được đề cập ở trên, với một khối lượng lớn yêu cầu nhỏ, tổng số CPU trên tất cả các lõi là quan trọng nhất. Với cùng tổng sức mạnh CPU, PostgreSQL thường sẽ làm tốt hơn với số lõi ít hơn, nhanh hơn so với nhiều nhân, lõi chậm hơn.
Cho đến khi phần trăm cao của bộ dữ liệu hoạt động của bạn được lưu vào bộ đệm, việc thêm RAM thường sẽ hiển thị nhiều tiếng nổ hơn so với việc thêm lõi. Sau khi bạn có đủ bộ nhớ đệm, lợi ích của RAM bổ sung sẽ giảm xuống và tốt hơn hết là bạn nên tăng sức mạnh cho CPU.
Để biết thêm chi tiết về chủ đề này khi nó liên quan đến PostgreSQL, tôi không nghĩ rằng có một nguồn tốt hơn PostgreQuery 9.0 Hiệu suất cao của Greg Smith . (Tiết lộ đầy đủ, tôi là người đánh giá kỹ thuật cho cuốn sách, nhưng không nhận được lợi ích tài chính dựa trên doanh số.)