Mục lục:
- Bộ nhớ đệm
- Một ngưỡng thời gian phục hồi do bạn thiết lập được đáp ứng; tổng số khối bẩn gây ra một thời gian phục hồi không thể chấp nhận.
Video: Cloud Computing - Computer Science for Business Leaders 2016 2025
Bộ nhớ đệm cơ sở dữ liệu của Oracle 12c thường là phần lớn nhất của SGA. Nó có dữ liệu đến từ các tập tin trên đĩa. Bởi vì truy cập dữ liệu từ đĩa chậm hơn so với bộ nhớ, mục đích duy nhất của bộ nhớ cache đệm cơ sở dữ liệu là để lưu trữ dữ liệu trong bộ nhớ để truy cập nhanh hơn.
Bộ đệm đệm cơ sở dữ liệu có thể chứa dữ liệu từ tất cả các loại đối tượng:
-
Bàn
-
Chỉ mục
-
từ ngữ
đệm là các khối cơ sở dữ liệu. Dữ liệu hệ thống Một khối cơ sở dữ liệu là lượng lưu trữ tối thiểu mà Oracle đọc hoặc viết. Tất cả các phân đoạn lưu trữ có chứa dữ liệu được tạo thành từ các khối. Khi bạn yêu cầu dữ liệu từ đĩa, tối thiểu Oracle đọc một khối. Ngay cả khi bạn yêu cầu chỉ một hàng, nhiều hàng trong cùng một bảng có thể sẽ được truy lục. Cũng vậy nếu bạn yêu cầu một cột trong một hàng. Oracle đọc toàn bộ khối, rất có thể có nhiều hàng, và tất cả các cột cho hàng đó.
Bộ đệm cache của nhà nước trong Oracle 12c
Bộ nhớ đệm
kiểm soát những khối nào có được ở lại tùy thuộc vào không gian sẵn có và trạng thái khối (tương tự như cách chia sẻ pool quyết định SQL sẽ ở lại). Bộ đệm cache sử dụng phiên bản LRU của chính nó. Không hiện đang được sử dụng cho bất cứ điều gì
Được ghim:
-
Hiện đang được truy cập > Bẩn: Chặn đã được chỉnh sửa nhưng chưa được ghi vào đĩa
-
Các khối tự do Lý tưởng là các khối tự do có sẵn bất cứ khi nào bạn cần. Tuy nhiên, có lẽ không phải là trường hợp trừ khi cơ sở dữ liệu của bạn quá nhỏ mà toàn bộ điều có thể phù hợp trong bộ nhớ.
-
Các thuật toán LRU hoạt động một chút khác nhau trong bộ đệm cache hơn nó trong bể chia sẻ. Nó đánh giá từng khối và sau đó là thời gian nó đã được kể từ khi nó được truy cập. Ví dụ, một khối được một điểm mỗi khi nó được xúc động. Điểm càng cao thì càng ít khả năng khối sẽ bị xóa khỏi bộ nhớ. Tuy nhiên, nó phải được truy cập thường xuyên hoặc điểm số giảm. Một khối đã làm việc chăm chỉ để giữ trong bộ nhớ nếu sự cạnh tranh cho các nguồn tài nguyên bộ nhớ là cao.
Cho mỗi khối số điểm và thời gian để ngăn chặn tình huống này phát sinh: Một khối được truy cập rất nhiều vào cuối tháng để báo cáo.Điểm số của nó cao hơn bất kỳ khối khác trong hệ thống. Khối đó không bao giờ được truy cập lại.
Nó bị lãng phí bộ nhớ cho đến khi cơ sở dữ liệu được khởi động lại hoặc một khối khác cuối cùng điểm số đủ điểm để đánh bại nó. Thành phần thời gian kéo dài rất nhanh sau khi bạn không còn truy cập nó nữa.
Các khối được ghim
Một khối hiện đang được truy cập là một khối
bị ghim.
Khối này bị khoá (hoặc ghim) vào bộ nhớ đệm để không thể bị lỗi tuổi của bộ đệm cache trong khi quá trình Oracle (thường đại diện cho một người dùng) đang truy cập nó.
Khối bẩn
Một khối được sửa đổi là khối bẩn. Để đảm bảo các thay đổi của bạn được lưu giữ qua các lần tắt máy cơ sở dữ liệu, những khối bẩn này phải được ghi từ bộ nhớ cache đệm vào đĩa. Cơ sở dữ liệu tên các khối bẩn trong một danh sách bẩn hoặc viết hàng đợi.
Bạn có thể nghĩ rằng mỗi lần một khối được sửa đổi, nó phải được ghi vào đĩa để giảm thiểu dữ liệu bị mất. Đây không phải là trường hợp - ngay cả khi có
cam kết (khi bạn lưu thay đổi vĩnh viễn)! Một số cấu trúc giúp ngăn ngừa dữ liệu bị mất. Hơn nữa, Oracle có vấn đề cờ bạc. Hiệu năng của hệ thống sẽ thu thập thông tin nếu bạn đã viết các khối vào đĩa cho mỗi sửa đổi. Để chống lại điều này, Oracle đóng vai trò quan trọng mà cơ sở dữ liệu không thể thất bại và chỉ viết các khối trên đĩa trong các nhóm lớn hơn.
Đừng lo lắng; nó thậm chí không có nguy cơ bị mất dữ liệu. Oracle đang đạt được hiệu suất trên cơ sở dữ liệu ngay bây giờ với chi phí có thể của việc phục hồi còn
sau đó.
Vì thất bại trên các hệ thống được quản lý đúng cách ít khi xảy ra, đó là một cách rẻ tiền để đạt được một số hiệu suất. Tuy nhiên, nó không phải là nếu Oracle bỏ các khối bẩn trên mà không làm sạch sau khi chính nó. Chặn các ghi đè kích hoạt trong Oracle 12c Điều gì gây nên việc viết một khối và do đó là một khối bẩn? Cơ sở dữ liệu được cấp một lệnh tắt máy. Một điểm kiểm soát toàn bộ hoặc một phần xảy ra - đó là khi hệ thống định kỳ đổ tất cả các bộ đệm bẩn vào đĩa.
Một ngưỡng thời gian phục hồi do bạn thiết lập được đáp ứng; tổng số khối bẩn gây ra một thời gian phục hồi không thể chấp nhận.
Một khối tự do là cần thiết và không có gì được tìm thấy sau một lượng tìm kiếm nhất định.
-
Một số lệnh ngôn ngữ định nghĩa dữ liệu (DDL). (Các lệnh DDL là câu lệnh SQL định nghĩa các đối tượng trong cơ sở dữ liệu.)
-
Ba giây một lần.
-
Các lý do khác. Thuật toán rất phức tạp, và bạn không thể chắc chắn với tất cả những thay đổi xảy ra với mỗi bản phát hành phần mềm.
-
Thực tế là cơ sở dữ liệu vẫn là những khối văn bản khá bận rộn trong một môi trường nơi có rất nhiều thay đổi.