Sự khác nhau giữa chế độ xem và xem vật liệu

Anonim

Xem so với xem nguyên liệu

-1->

select * from viewname

Xem

Như đã đề cập trước đây, view là một bảng ảo, nó ẩn một truy vấn chọn. Các truy vấn chọn này không được thực hiện trước. Khi chúng ta thực hiện một câu lệnh select từ một view, nó thực thi câu lệnh select bên trong body view. Giả sử câu lệnh select của cơ thể xem là một câu lệnh rất phức tạp. Vì vậy, khi nó được thực hiện, phải mất một thời gian để thực hiện (tương đối nhiều thời gian). Ngoài ra, chế độ xem sử dụng không gian rất nhỏ để lưu trữ chính nó. Đó là vì nó chỉ có một tuyên bố chọn là nội dung của nó.

Chế độ xem vật hoá (Mview)

Đây là một kiểu nhìn đặc biệt. Mviews được tạo ra khi chúng tôi có vấn đề hiệu suất với chế độ xem. Khi chúng ta tạo ra một mview, nó thực hiện truy vấn select và lưu kết xuất nó như một bảng snapshot. Khi chúng ta yêu cầu dữ liệu từ Mview, nó không cần thực hiện lại câu lệnh select. Nó cho kết xuất từ ​​bảng snapshot của nó. Vì vậy, thời gian thực hiện của mview là thấp hơn xem (cho cùng một tuyên bố lựa chọn). Tuy nhiên, mviews không thể được sử dụng tất cả các thời gian, vì nó cho thấy cùng một đầu ra, được lưu trữ như là một bảng snapshot. Chúng ta phải làm mới mview để có được kết quả mới nhất.

Sự khác nhau giữa View và Mview là gì?

1. Mview luôn lưu kết xuất của nó như là một bảng snapshot khi nó được tạo, nhưng xem không tạo ra bất kỳ bảng.

2. Chế độ xem không cần dung lượng lớn để lưu trữ nội dung của nó, nhưng mview cần khoảng không lớn hơn chế độ xem để lưu trữ nội dung của nó (như bảng chụp nhanh).

3. Xem mất thời gian thực hiện lớn hơn, nhưng mview mất thời gian thực hiện nhỏ hơn số lượt xem (cho cùng một tuyên bố lựa chọn).

4. Mviews cần phải được làm mới để có được dữ liệu mới nhất, nhưng lượt xem luôn cung cấp dữ liệu mới nhất của nó.

5. Lược đồ cần đặc quyền tạo "materialized view" để tạo mviews, và đối với chế độ xem, nó cần quyền "tạo chế độ xem".

6. Các chỉ mục có thể được tạo ra trên mviews để đạt được hiệu suất cao hơn, nhưng không thể tạo các chỉ mục trên chế độ xem.