Việc tối ưu bộ nhớ trong oracle database là việc vô cùng quan trọng, ảnh hướng đến hiệu suất DB, dưới đây chung ta cùng đi tìm hiểu công cụ hỗ trợ tối ưu bộ nhớ.
Ví dụ chúng ta có bảng report AWR như sau: (đây là báo cáo AWR)
Giải thích từng cột trong bảng:
SGA Target Size (M)
Kích thước SGA đề xuất (tính bằng megabyte). Đây là các giá trị đề xuất cho việc cấu hình kích thước SGA.
SGA Size Factor
Hệ số kích thước của SGA so với kích thước hiện tại. Giá trị 1.00 đại diện cho kích thước SGA hiện tại. Các giá trị khác là tỷ lệ so với kích thước hiện tại (ví dụ: 0.50 có nghĩa là một nửa kích thước hiện tại, 2.00 có nghĩa là gấp đôi kích thước hiện tại).
Est DB Time (s)
Thời gian hoạt động cơ sở dữ liệu ước tính (tính bằng giây). Đây là thời gian cơ sở dữ liệu ước tính sẽ hoạt động khi sử dụng kích thước SGA đề xuất. Thời gian này càng thấp thì hiệu suất cơ sở dữ liệu càng tốt.
Est Physical Reads
Số lần đọc vật lý ước tính. Đây là số lần đọc từ đĩa ước tính khi sử dụng kích thước SGA đề xuất. Số lần đọc vật lý thấp hơn thường chỉ ra hiệu suất tốt hơn vì dữ liệu được đọc từ bộ nhớ nhiều hơn thay vì từ đĩa.
Phân tích thông tin trong bảng:
SGA Target Size (M)
Các giá trị từ 872 MB đến 3,488 MB được đề xuất để thử nghiệm.
SGA Size Factor
Hệ số kích thước dao động từ 0.50 đến 2.00, so với kích thước hiện tại là 1.00 (1,744 MB).
Est DB Time (s)
Thời gian cơ sở dữ liệu ước tính giảm từ 273 giây xuống 260 giây khi kích thước SGA tăng từ 872 MB đến 1,744 MB.
Sau đó, thời gian cơ sở dữ liệu duy trì ổn định ở mức 260 giây dù kích thước SGA tăng lên đến 3,488 MB. Điều này cho thấy việc tăng kích thước SGA thêm nữa không cải thiện hiệu suất đáng kể.
Est Physical Reads
Số lần đọc vật lý giảm từ 243,137 lần xuống 153,447 lần khi kích thước SGA tăng từ 872 MB đến 1,744 MB.
Sau đó, số lần đọc vật lý duy trì ổn định ở mức 153,447 lần dù kích thước SGA tăng lên đến 3,488 MB. Điều này cho thấy kích thước SGA tối ưu là khoảng 1,744 MB, và việc tăng kích thước thêm nữa không giảm đáng kể số lần đọc vật lý.
Như vậy là:
Dựa trên bảng SGA Target Advisory:
- Kích thước SGA hiện tại là 1,744 MB có vẻ là tối ưu, vì việc tăng kích thước SGA lên 2,180 MB, 2,616 MB, 3,052 MB hoặc 3,488 MB không giảm thời gian hoạt động của cơ sở dữ liệu hay số lần đọc vật lý đáng kể.
- Kích thước SGA dưới mức hiện tại (872 MB hoặc 1,308 MB) làm tăng thời gian hoạt động cơ sở dữ liệu và số lần đọc vật lý, cho thấy hiệu suất sẽ bị giảm nếu giảm kích thước SGA.
Do đó, để duy trì hoặc tối ưu hóa hiệu suất cơ sở dữ liệu, nên giữ kích thước SGA ở khoảng 1,744 MB hoặc có thể tăng nhẹ lên mức 2,180 MB nếu cần thiết, nhưng không cần thiết phải tăng lên đến 3,488 MB.