Chương 1. CÁC THÀNH PHẦN KIẾN TRÚC
Số trang: 13
Loại file: pdf
Dung lượng: 389.36 KB
Lượt xem: 29
Lượt tải: 0
Xem trước 2 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
Chương 1. CÁC THÀNH PHẦN KIẾN TRÚC1.1. KIẾN TRÚC ORACLE SERVEROracle server là một hệ thống quản trị cơ sở dữ liệu đối tượng-quan hệ cho phép quản lý thông tin một cách toàn diện. Oracle server bao gồm hai thành phần chính là Oracle instance và Oracle database.1.1.1. Oracle InstanceOracle instance bao gồm một cấu trúc bộ nhớ System Global Area (SGA) và các background processes (tiến trình nền) được sử dụng để quản trị cơ sở dữ liệu. Oracle instance được xác định qua tham số môi trường ORACLE_SID của hệ điều hành.Background processHình vẽ 1. Kiến trúc...
Nội dung trích xuất từ tài liệu:
Chương 1. CÁC THÀNH PHẦN KIẾN TRÚCChương 1. CÁC THÀNH PHẦN KIẾN TRÚC1.1. KIẾN TRÚC ORACLE SERVEROracle server là một hệ thống quản trị cơ sở dữ liệu đối tượng-quan hệ cho phép quảnlý thông tin một cách toàn diện. Oracle server bao gồm hai thành phần chính là Oracleinstance và Oracle database.1.1.1. Oracle InstanceOracle instance bao gồm một cấu trúc bộ nhớ System Global Area (SGA) và cácbackground processes (tiến trình nền) được sử dụng để quản trị cơ sở dữ liệu.Oracle instance được xác định qua tham số môi trường ORACLE_SID của hệ điều hành. Background process Hình vẽ 1. Kiến trúc Oracle ServerSystem Global Area - SGASGA là vùng bộ nhớ chia sẻ được sử dụng để lưu trữ dữ liệu và các thông tin điều khiểncủa Oracle server. SGA được cấp phát (allocated) trong bộ nhớ của máy tính mà Oracleserver đang hoạt động trên đó. Các User kết nối tới Oracle sẽ chia sẻ các dữ liệu cótrong SGA, việc mở rộng không gian bộ nhớ cho SGA sẽ làm nâng cao hiệu suất của hệthống, lưu trữ được nhiều dữ liệu trong hệ thống hơn đồng thời giảm thiểu các thao táctruy xuất đĩa (disk I/O).SGA bao gồm một vài cấu trúc bộ nhớ chính: Shared pool: Là một phần của SGA lưu các cấu trúc bộ nhớ chia sẻ. Database buffer cache: Lưu trữ các dữ liệu được sử dụng gần nhất. Redo log buffer: Được sử dụng cho việc dò tìm lại các thay đồi trong cơ sở dữ liệu và được thực hiện bởi các background process.Để chi tiết hơn, ta sẽ xem xét cụ thể từng thành phần.Share PoolShared pool là một phần trong SGA và được sử dụng khi thực hiện phân tích câu lệnh(parse phase). Kích thước của Shared pool được xác định bởi tham sốSHARED_POOL_SIZE có trong parameter file (file tham số).Các thành phần của Shared pool gồm có: Library cache và Data dictionary cache. Hình vẽ 2. Cấu trúc Share PoolLibrary CacheLibrary cache lưu trữ thông tin về các câu lệnh SQL được sử dụng gần nhất bao gồm: Nội dung của câu lệnh dạng text (văn bản). Parse tree (cây phân tích) được xây dựng tuỳ thuộc vào câu lệnh. Execution plan (sơ đồ thực hiện lệnh) gồm các bước thực hiện và tối ưu lệnh.Do các thông tin trên đã được lưu trữ trong Library cache nên khi thực hiện lại một câulệnh truy vấn, trước khi thực hiện câu lệnh, Server process sẽ lấy lại các thông tin đãđược phân tích mà không phải phân tích lại câu lệnh. Do vậy, Library cache có thể giúpnâng cao hiệu suất thực hiện lệnh.Data Dictionary CacheData dictionary cache là một thành phần của Shared pool lưu trữ thông tin củadictionary cache được sử dụng gần nhất như các định nghĩa các bảng, định nghĩa cáccột, usernames, passwords, và các privileges (quyền).Trong giai đoạn phân tích lệnh (parse phase), Server process sẽ tìm các thông tin trongdictionary cache để xác định các đối tượng trong câu lệnh SQL và để xác định các mứcquyền tương ứng. Trong trường hợp cần thiết, Server process có thể khởi tạo và nạpcác thông tin từ các file dữ liệu.Data buffer cacheKhi thực hiện một truy vấn, Server process sẽ tìm các blocks cần thiết trong databasebuffer cache. Nếu không tìm thấy block trong database buffer cache, Server process mớiđọc các block từ data file và tạo luôn một bản sao của block đó vào trong vùng nhớ đệm(buffer cache). Như vậy, với các lần truy xuất tới block đó sau này sẽ không cần thiếtphải truy xuất vào datafile nữa. Hình vẽ 3. Database buffer cacheDatabase buffer cache là vùng nhớ trong SGA sử dụng để lưu trữ các block dữ liệu đượcsử dụng gần nhất. Tương tự như kích thước của blocks dữ liệu được xác định bởi thamsố DB_BLOCK_SIZE, kích thước của vùng đệm trong buffer cache cũng được xác địnhbởi tham số DB_BLOCK_BUFFERS.Oracle server sử dụng giải thuật least recently used (LRU) algorithm để làm tươi lại vùngnhớ. Theo đó, khi nạp mới một block vào bộ đệm, trong trường hợp bộ đệm đã đầy,Oracle server sẽ loại bớt block ít được sử dụng nhất ra khỏi bộ đệm để nạp block mớivào bộ đệm.Redo log bufferServer process ghi lại các thay đổi của một instance vào redo log buffer, đây cũng làmột phần bộ nhớ SGA. Hình vẽ 4. Redo log bufferCó một số đặc điểm cần quan tâm của Redo log buffer: Kích thước được xác định bởi tham số LOG_BUFFER. Lưu trữ các redo records (bản ghi hồi phục) mỗi khi có thay đổi dữ liệu. Redo log buffer được sử dụng một cách thường xuyên và các thay đổi bởi một transaction có thể nằm đan xen với các thay đổi của các transactions khác. Bộ đệm được tổ chức theo kiểu circular buffer (bộ đệm nối vòng) tức là dữ liệu thay đổi sẽ tiếp tục được nạp lên đầu sau khi vùng đệm đã được sử dụng hết.Background processBackground process (các tiến trình nền) thực hiện các chức năng thay cho lời gọi tiếntrình xử lý tươ ...
Nội dung trích xuất từ tài liệu:
Chương 1. CÁC THÀNH PHẦN KIẾN TRÚCChương 1. CÁC THÀNH PHẦN KIẾN TRÚC1.1. KIẾN TRÚC ORACLE SERVEROracle server là một hệ thống quản trị cơ sở dữ liệu đối tượng-quan hệ cho phép quảnlý thông tin một cách toàn diện. Oracle server bao gồm hai thành phần chính là Oracleinstance và Oracle database.1.1.1. Oracle InstanceOracle instance bao gồm một cấu trúc bộ nhớ System Global Area (SGA) và cácbackground processes (tiến trình nền) được sử dụng để quản trị cơ sở dữ liệu.Oracle instance được xác định qua tham số môi trường ORACLE_SID của hệ điều hành. Background process Hình vẽ 1. Kiến trúc Oracle ServerSystem Global Area - SGASGA là vùng bộ nhớ chia sẻ được sử dụng để lưu trữ dữ liệu và các thông tin điều khiểncủa Oracle server. SGA được cấp phát (allocated) trong bộ nhớ của máy tính mà Oracleserver đang hoạt động trên đó. Các User kết nối tới Oracle sẽ chia sẻ các dữ liệu cótrong SGA, việc mở rộng không gian bộ nhớ cho SGA sẽ làm nâng cao hiệu suất của hệthống, lưu trữ được nhiều dữ liệu trong hệ thống hơn đồng thời giảm thiểu các thao táctruy xuất đĩa (disk I/O).SGA bao gồm một vài cấu trúc bộ nhớ chính: Shared pool: Là một phần của SGA lưu các cấu trúc bộ nhớ chia sẻ. Database buffer cache: Lưu trữ các dữ liệu được sử dụng gần nhất. Redo log buffer: Được sử dụng cho việc dò tìm lại các thay đồi trong cơ sở dữ liệu và được thực hiện bởi các background process.Để chi tiết hơn, ta sẽ xem xét cụ thể từng thành phần.Share PoolShared pool là một phần trong SGA và được sử dụng khi thực hiện phân tích câu lệnh(parse phase). Kích thước của Shared pool được xác định bởi tham sốSHARED_POOL_SIZE có trong parameter file (file tham số).Các thành phần của Shared pool gồm có: Library cache và Data dictionary cache. Hình vẽ 2. Cấu trúc Share PoolLibrary CacheLibrary cache lưu trữ thông tin về các câu lệnh SQL được sử dụng gần nhất bao gồm: Nội dung của câu lệnh dạng text (văn bản). Parse tree (cây phân tích) được xây dựng tuỳ thuộc vào câu lệnh. Execution plan (sơ đồ thực hiện lệnh) gồm các bước thực hiện và tối ưu lệnh.Do các thông tin trên đã được lưu trữ trong Library cache nên khi thực hiện lại một câulệnh truy vấn, trước khi thực hiện câu lệnh, Server process sẽ lấy lại các thông tin đãđược phân tích mà không phải phân tích lại câu lệnh. Do vậy, Library cache có thể giúpnâng cao hiệu suất thực hiện lệnh.Data Dictionary CacheData dictionary cache là một thành phần của Shared pool lưu trữ thông tin củadictionary cache được sử dụng gần nhất như các định nghĩa các bảng, định nghĩa cáccột, usernames, passwords, và các privileges (quyền).Trong giai đoạn phân tích lệnh (parse phase), Server process sẽ tìm các thông tin trongdictionary cache để xác định các đối tượng trong câu lệnh SQL và để xác định các mứcquyền tương ứng. Trong trường hợp cần thiết, Server process có thể khởi tạo và nạpcác thông tin từ các file dữ liệu.Data buffer cacheKhi thực hiện một truy vấn, Server process sẽ tìm các blocks cần thiết trong databasebuffer cache. Nếu không tìm thấy block trong database buffer cache, Server process mớiđọc các block từ data file và tạo luôn một bản sao của block đó vào trong vùng nhớ đệm(buffer cache). Như vậy, với các lần truy xuất tới block đó sau này sẽ không cần thiếtphải truy xuất vào datafile nữa. Hình vẽ 3. Database buffer cacheDatabase buffer cache là vùng nhớ trong SGA sử dụng để lưu trữ các block dữ liệu đượcsử dụng gần nhất. Tương tự như kích thước của blocks dữ liệu được xác định bởi thamsố DB_BLOCK_SIZE, kích thước của vùng đệm trong buffer cache cũng được xác địnhbởi tham số DB_BLOCK_BUFFERS.Oracle server sử dụng giải thuật least recently used (LRU) algorithm để làm tươi lại vùngnhớ. Theo đó, khi nạp mới một block vào bộ đệm, trong trường hợp bộ đệm đã đầy,Oracle server sẽ loại bớt block ít được sử dụng nhất ra khỏi bộ đệm để nạp block mớivào bộ đệm.Redo log bufferServer process ghi lại các thay đổi của một instance vào redo log buffer, đây cũng làmột phần bộ nhớ SGA. Hình vẽ 4. Redo log bufferCó một số đặc điểm cần quan tâm của Redo log buffer: Kích thước được xác định bởi tham số LOG_BUFFER. Lưu trữ các redo records (bản ghi hồi phục) mỗi khi có thay đổi dữ liệu. Redo log buffer được sử dụng một cách thường xuyên và các thay đổi bởi một transaction có thể nằm đan xen với các thay đổi của các transactions khác. Bộ đệm được tổ chức theo kiểu circular buffer (bộ đệm nối vòng) tức là dữ liệu thay đổi sẽ tiếp tục được nạp lên đầu sau khi vùng đệm đã được sử dụng hết.Background processBackground process (các tiến trình nền) thực hiện các chức năng thay cho lời gọi tiếntrình xử lý tươ ...
Tìm kiếm theo từ khóa liên quan:
oracle server thành phần kiến trúc của dữ liệu cấu trúc bộ nhớ tiến trình nền cơ sở dữ liệuGợi ý tài liệu liên quan:
-
62 trang 401 3 0
-
Đề thi kết thúc học phần học kì 2 môn Cơ sở dữ liệu năm 2019-2020 có đáp án - Trường ĐH Đồng Tháp
5 trang 377 6 0 -
Giáo trình Cơ sở dữ liệu: Phần 2 - TS. Nguyễn Hoàng Sơn
158 trang 292 0 0 -
13 trang 291 0 0
-
Phân tích thiết kế hệ thống - Biểu đồ trạng thái
20 trang 285 0 0 -
Tài liệu học tập Tin học văn phòng: Phần 2 - Vũ Thu Uyên
85 trang 255 1 0 -
Đề cương chi tiết học phần Quản trị cơ sở dữ liệu (Database Management Systems - DBMS)
14 trang 244 0 0 -
8 trang 186 0 0
-
Giáo trình về dữ liệu và các mô hình cơ sở dữ liệu
62 trang 183 0 0 -
Giáo trình Cơ sở dữ liệu: Phần 2 - Đại học Kinh tế TP. HCM
115 trang 175 0 0