Chế độ soi kèo bóng đá truoctran được vật chất hóa trongPOSTGRESQLSử dụng hệ thống quy tắc như chế độ soi kèo bóng đá truoctran làm, nhưng vẫn tồn tại kết quả dưới dạng giống như bảng. Sự khác biệt chính giữa:
9097_9159
và:
Tạo bảng myMatView là chọn * từ mytab;
9268_9529
Làm mới soi kèo bóng đá truoctran MYMATVIEW;
Thông tin về chế độ soi kèo bóng đá truoctran được vật chất hóa trongPostgreSQL9704_10043
Trong khi truy cập vào dữ liệu được lưu trữ trong chế độ soi kèo bóng đá truoctran được vật chất hóa thường nhanh hơn nhiều so với việc truy cập trực tiếp các bảng cơ bản hoặc thông qua chế độ soi kèo bóng đá truoctran, dữ liệu không phải lúc nào cũng hiện tại; Tuy nhiên, đôi khi dữ liệu hiện tại là không cần thiết. soi kèo bóng đá truoctran xét một bảng ghi lại doanh số:
Tạo hóa đơn bảng ( Hóa đơn_no khóa chính số nguyên, Người bán_No Integer, - ID của nhân viên bán hàng Hóa đơn_Date ngày, - Ngày bán hàng Invoice_amt Numeric (13,2) - Số tiền bán hàng );
Nếu mọi người muốn nhanh chóng vẽ đồ thị dữ liệu bán hàng lịch sử, họ có thể muốn tóm tắt và họ có thể không quan tâm đến dữ liệu không đầy đủ cho ngày hiện tại:
10777_11115
Chế độ soi kèo bóng đá truoctran được vật chất hóa này có thể hữu ích để hiển thị biểu đồ trong bảng điều khiển được tạo cho nhân viên bán hàng. Một công việc có thể được lên lịch để cập nhật số liệu thống kê mỗi tối bằng cách sử dụng câu lệnh SQL này:
Làm mới chế độ soi kèo bóng đá truoctran sales_summary;
Một cách sử dụng khác cho chế độ soi kèo bóng đá truoctran được vật chất hóa là cho phép truy cập nhanh hơn vào dữ liệu được mang từ một hệ thống từ xa thông qua trình bao bọc dữ liệu nước ngoài. Một ví dụ đơn giản sử dụngFILE_FDW
bên dưới, với thời gian, nhưng vì điều này đang sử dụng bộ đệm trên hệ thống cục bộ, sự khác biệt hiệu suất so với truy cập vào hệ thống từ xa thường sẽ lớn hơn được hiển thị ở đây. Lưu ý rằng chúng tôi cũng đang khai thác khả năng đặt một chỉ mục vào chế độ soi kèo bóng đá truoctran được vật chất hóa, trong khiFILE_FDW
Không hỗ trợ các chỉ mục; Ưu điểm này có thể không áp dụng cho các loại truy cập dữ liệu nước ngoài khác.
Cài đặt:
Tạo phần mở rộng FILE_FDW; Tạo máy chủ địa phương_file bao bọc dữ liệu nước ngoài file_fdw; Tạo các từ trên bàn nước ngoài (văn bản không phải null) Máy chủ Local_File Tùy chọn (tên tệp '/usr/share/dict/words'); Tạo quan điểm soi kèo bóng đá truoctran hóa wrd là chọn * từ các từ; Tạo chỉ mục độc đáo WRD_WORD trên WRD (Word); Tạo tiện ích mở rộng PG_TRGM; Tạo chỉ mục WRD_TRGM trên WRD bằng cách sử dụng GIST (từ gist_trgm_ops); Phân tích chân không WRD;
Bây giờ hãy kiểm tra chính tả một từ. Sử dụngFILE_FDW
trực tiếp:
Chọn Đếm (*) từ các từ trong đó Word = 'Caterpiler'; đếm ------- 0 (1 hàng)
vớiGiải thích Phân tích
, chúng ta thấy:
Tổng hợp (chi phí = 21763,99..21764.00 hàng = 1 chiều rộng = 0) (thời gian thực tế = 188.180..188.181 hàng = 1 vòng - Quét nước ngoài trên các từ (chi phí = 0,00..21761.41 hàng = 1032 chiều rộng = 0) (thời gian thực tế = 188.177..188.177 hàng = 0 vòng = 1) Bộ lọc: (Word = 'Caterpiler' :: Text) Hàng bị xóa bởi bộ lọc: 479829 Tệp nước ngoài:/usr/share/dict/words Kích thước tệp nước ngoài: 4953699 Thời gian lập kế hoạch: 0,118 ms Thời gian thực hiện: 188.273 ms
Nếu chế độ soi kèo bóng đá truoctran được sử dụng thay thế, truy vấn nhanh hơn nhiều:
Tổng hợp (chi phí = 4,44..4,45 hàng = 1 chiều rộng = 0) (thời gian thực tế = 0,042..0.042 hàng = 1 vòng - Chỉ có chỉ số quét bằng WRD_WORD trên WRD (chi phí = 0,42..4,44 hàng = 1 chiều rộng = 0) (thời gian thực tế = 0,039..0.039 hàng = 0 vòng = 1) Index Cond: (Word = 'Caterpiler' :: Text) HEAP FETCHES: 0 Thời gian lập kế hoạch: 0,164 ms Thời gian thực hiện: 0.117 ms
Dù sao đi nữa, từ này được đánh vần sai, vì vậy hãy tìm kiếm những gì chúng ta có thể muốn. Một lần nữa sử dụngFILE_FDW
vàPG_TRGM
:
13896_14120
14155_14754
Sử dụng chế độ soi kèo bóng đá truoctran được vật chất hóa:
giới hạn (chi phí = 0,29..1,06 hàng = 10 chiều rộng = 10) (thời gian thực tế = 187.222..188.257 hàng = 10 vòng = 1) - Quét chỉ mục bằng WRD_TRGM trên WRD (chi phí = 0,29..37020.87 hàng = 479829 chiều rộng = 10) (thời gian thực tế = 187.219..188.252 hàng = 10 vòng = 1) Đặt hàng bởi: (Word <- 'Caterpiler' :: Text) Thời gian lập kế hoạch: 0,196 ms Thời gian thực hiện: 198.640 ms
Nếu bạn có thể chấp nhận cập nhật định kỳ dữ liệu từ xa vào cơ sở dữ liệu cục bộ, lợi ích hiệu suất có thể là đáng kể.
Nếu bạn thấy bất cứ điều gì trong tài liệu không chính xác, không phù hợp Kinh nghiệm của bạn với tính năng cụ thể hoặc yêu cầu làm rõ thêm, Vui lòng sử dụngMẫu nàyĐể báo cáo vấn đề tài liệu.