Most recently used strategy là gì?

Noun Database
Chiến lược được sử dụng gần đây nhất

Ví dụ chúng ta có câu truy vấn như sau:


select * from instructor natural join department;

Giả sử rằng chiến lược được chọn để xử lý câu truy vấn này được cung cấp bởi chương trình mã giả (pseudocode) bên dưới:

for each tuple i of instructor do
  for each tuple d of department do
    if i[dept name] = d[dept name]
    then begin
              let x be a tuple defined as follows:
               x[ ID ] := i[ ID ]
               x[dept name] := i[dept name]
               x[name] := i[name]
               x[salary] := i[salary]
               x[building] := d[building]
               x[budget] := d[budget]
               include tuple x as part of result of instructor ⋈ department
         end
  end
end

Bây giờ hãy xem xét các khối (block) chứa các hàng của department. Chúng ta cần phải kiểm tra mỗi khối của các hàng của department một lần cho mỗi hàng của quan hệ (relation) instructor. Khi xử lý xong một khối của department, chúng ta biết rằng khối đó sẽ không được truy cập lại cho đến khi tất cả các khối của department khác đã được xử lý xong. Do đó, khối của department được sử dụng gần đây nhất sẽ là khối cuối cùng được tham chiếu lại và khối của department ít được sử dụng gần đây nhất là khối sẽ được tham chiếu tiếp theo. Chiến lược để thay thế khối cho quy trình trên là chiến lược được sử dụng gần đây nhất (most recently used strategy). Nếu khối của department phải được xóa khỏi buffer, thì chiến lược được sử dụng gần đây nhất (most recently used strategy) sẽ chọn khối được sử dụng gần đây nhất.

Để chiến lược được sử dụng gần đây nhất (most recently used strategy) hoạt động chính xác như ví dụ của chúng ta, hệ thống phải ghim (pin) khối của department hiện đang được xử lý. Sau khi hàng cuối cùng của department được xử lý, khối sẽ được bỏ ghim (unpin) và nó trở thành khối được sử dụng gần đây nhất.

Learning English Everyday