Vùng nhớ hệ thống SGASGA

Một phần của tài liệu Phương pháp tối ưu hóa trong hệ CSDL Oracle (Trang 26 - 27)

D. Kết luận về phơng pháp tối u trong Oracle

Vùng nhớ hệ thống SGASGA

Khi Oracle hoạt động thì mọi thông tin phải chứa trong bộ nhớ hoặc đĩa. Do việc truy xuất trên RAM sẽ nhanh hơn nhiều với việc truy xuất trên đĩa cho nên một trong những thao tác cơ bản trong tối u để hệ thống có thể hoạt động hiệu quả hơn bằng việc thay đổi các tham số của vùng nhớ SGA (các tham số nằm trong Init File, có thể tìm thấy file này ở th mục DATABASE). Chú ý rằng nên cấu hình làm sao để cho toàn bộ vùng nhớ SGA nằm trong Physical Memory là tốt nhất. Có thể thay đổi kích thớc của SGA thông qua việc thay đổi từng thành phần của SGA và độ lớn của SGA chính là tổng độ lớn của ba thành phần Share Pool + Buffer Cache + Redo Log Buffer.

Database Buffer Cache

Vùng nhớ hệ thống SGASGA SGA Shared Pool Redo Log Buffer Data Buffer Cache

48* Điều chỉnh kích thớc Share Pool qua thông số shared_pool_size ở trong Parameter File. Trong Share Pool có ba thành phần là Library cache, Data dictionary cache và Session information. Kích thớc của Share Pool là thích hợp khi nó thoả mãn các điều kiện dới đây.

- Với độ lớn Library cache thích hợp khi mà tỉ lệ số lần thủ tục và hàm trong th viện đợc thực hiện (PINS) chia cho số lần hàm và thủ tục đó phải nạp từ đĩa (RELOADS). Tỉ lệ này nhỏ hơn hoặc bằng 1% và càng gần 0 càng tốt. Để biết đợc tỉ lệ này cần thực hiện câu lệnh sau:

SELECT (sum(reloads)/sum(pins))*100,’%’ FROM v$librarycache;

Kết quả thực hiện với Database Center 0.09366945%, nh vậy bộ nhớ dành cho Library Cache khá nhiều.

- Độ lớn của Data dictionary cache thích hợp khi tỉ lệ số lần lấy thông tin (GETS) chia cho số lần thông tin không có (GETMISSES) nằm trong khoảng 10% đến 15% và càng gần 0 càng tốt. Giá trị này đợc biết qua câu lệnh sau:

SELECT (SUM(GETMISSES)/SUM(GETS))*100,'%' FROM V$ROWCACHE;

Kết quả thực hiện với Database Center là 2.0352019%, nh vậy vùng bộ nhớ dành cho Data dictionary cache khá nhiều.

13* Điều chỉnh độ lớn của Database Bufer Cache: Thành phần này đợc Oracle chia làm nhiều Block mỗi Block có kích thớc cố định tuỳ thuộc hệ điều hành và xác định qua tham số db_block_size trong Parameter File. Bằng cách thay đổi số Block (qua tham số db_block_buffers) sẽ thay đổi đợc kích thớc của Database Bufer Cache.

Độ lớn của Database Bufer Cache thích hợp khi tỉ lệ số khối dữ liệu đợc đọc từ đĩa (physical reads) chia cho tổng số các khối đợc yêu cầu (db block gets + constent gets). Tỉ lệ này nên nhỏ hơn 30% đến 40% và càng gần 0 càng tốt. Có thể xác định đợc tỉ lệ này qua các câu lệnh sau.

Một phần của tài liệu Phương pháp tối ưu hóa trong hệ CSDL Oracle (Trang 26 - 27)

Tải bản đầy đủ (DOCX)

(32 trang)
w