Danh mục

Báo cáo khoa học: ỨNG DỤNG KHUNG NHÌN THỰC ĐỂ NÂNG CAO TỐC ĐỘ THỰC THI TRUY VẤN

Số trang: 7      Loại file: pdf      Dung lượng: 212.05 KB      Lượt xem: 8      Lượt tải: 0    
Jamona

Xem trước 2 trang đầu tiên của tài liệu này:

Thông tin tài liệu:

Khung nhìn thực (materialized view, KNT) có thể cho phép thực thi các truy vấn phức tạp trên các cơ sở dữ liệu với dung lượng hàng terabytes trong vài giây hoặc phần nhỏ của giây, nhưng nó ít đư biết đến và ít được ứng dụng. Dù KNT có thể giúp nâng cao đáng k ợc ể năng suất của hệ thống, nhưng không phả i trong mọi trường hợp.
Nội dung trích xuất từ tài liệu:
Báo cáo khoa học: " ỨNG DỤNG KHUNG NHÌN THỰC ĐỂ NÂNG CAO TỐC ĐỘ THỰC THI TRUY VẤN" TẠP CHÍ KHOA HỌC VÀ CÔNG NGHỆ, ĐẠI HỌC ĐÀ NẴNG - SỐ 1(30).2009 ỨNG DỤNG KHUNG NHÌN THỰC ĐỂ NÂNG CAO TỐC ĐỘ THỰC THI TRUY VẤN APPLICATION OF THE MATERIALIZED VIEWS TO IMPROVE THE QUERY EXECUTION SPEED Nguyễn Trần Quốc Vinh Trường Đại học Kinh tế, Đại học Đà Nẵng TÓM T ẮT Khung nhìn thực (materialized view, KNT) có thể cho phép thực thi các truy vấn phứctạp trên các cơ sở dữ liệu với dung lượng hàng terabytes trong vài giây hoặc phần nhỏ củagiây, nhưng nó ít đư biết đến và ít được ứng dụng. Dù KNT có thể giúp nâng cao đáng k ợc ểnăng suất của hệ thống, nhưng không phả i trong mọi trường hợp. Bài viết này giới thiệu vềKNT và đề nghị giải pháp thực hiện một phần ý tưởng KNT trong các hệ quản trị cơ sở dữ liệukhông hỗ trợ KNT, cũng như khắc phục nhược điểm không có khả năng thực hiện cập nhật giatăng một số KNT trong một số hệ quản trị cơ sở dữ liệu có hỗ trợ KNT. ABSTRACT Materialized views can allow to execute the complex queries upon the large database ina few seconds or less, they are not well known and that application is not popular. Even thoughmaterialized views can help to significantly improve the performance of the systems, but not forall cases. This paper introduces the materialized views, and offers the useful solution to carryout a part of the idea of the materialized views in the database management systems notsupporting the materialized views, and to overcome the weakness of the inability to increaseundates on some systems supported by the materialized views.1. Đặt vấn đề KNT không cho phép nâng cao năng sut trong tất cả các trường hợp, hiệu quả ấứng dụng chúng có thể giảm đi rõ rệt nếu thường xuyên xảy ra thay đổi dữ liệu trongcác bảng gốc sử dụng để tạo KNT (hay KNT sử dụng). Nghĩa là, lợi ích sử dụng KNTthể hiện ở sự chênh lệch tổng chi phí duy trì KNT và tổng chi phí thực thi các truy vấntrên các bảng gốc ; hoặc là tổng chi phí duy trì cao hơn nhưng được dàn trải theo thờigian và không gâyảnh hưởng đến hoạt động của hệ thống, trong khi chi phí thực thitruy vấn giảm đi rõ rệt. Năng suất của hệ thống thông tin có thể bị giảm, thậm chí khảnăng phản hồi các truy vấn bị mất đi nếu số lượng truy vấn sử dụng một tập hợp dữ liệuít và trị số các truy vấn thấp, trong khi các phần tử của tập hợp dữ liệu đó được cập nhậtvới tần suất cao. Có ba phương pháp ập nhật KNT, đó là hoàn toàn (COMPLETE), gia tăng c(FAST hay còn g là INCREMENTAL) và ép buộc (FORCE) [1, 2]. Cập nhật hoàn ọitoàn thực tế là tạo lại KNT. Cập nhật gia tăng, chỉ sửa đổi nội dung KNT tương ứng vớicác thay đ trong các bảng gốc. Thông thường, cập nhật gia tăng đòi hỏi chi phí tài ổi 59 TẠP CHÍ KHOA HỌC VÀ CÔNG NGHỆ, ĐẠI HỌC ĐÀ NẴNG - SỐ 1(30).2009nguyên rất nhỏ so với cập nhật hoàn toàn. Cập nhật ép buộc nghĩa là khi có khả năng thìthực hiện cập nhật gia tăng, còn nếu không thì sử dụng cập nhật hoàn toàn. Trong quá trình ứng dụng KNT trong các hệ quản trị cơ sở dữ liệu (HQT CSDL)hỗ trợ KNT như SQL Server và Oracle nảy sinh vấn đề HQT CSDL không thể thực hiệncập nhật gia tăng cho nhiều KNT được tạo ra trên cơ sở các truy vấn khác nhau, đặc biệttrong số đó nhiều t ruy vấn đòi hỏi nhiều tài nguyên. Khi đó, việc buộc phải cập nhậthoàn toàn làm cho vi c ứng dụng KNT trở nên không còn hiệu quả, thậm chí, KNT có ệthể trở thành “gánh nặng” đối với hệ thống. Trong khi đó, trong nhiều trường hợp, kếtquả thực thi các truy vấn đó có thể cần phải có trong chế độ thời gian thực. Ngoài ra, sửdụng KNT là một ý tưởng rất tốt để nâng cao năng suất hệ thống, nhưng chúng chưađược hỗ trợ trong tất cả các HQT CSDL nguồn mở và miễn phí như mySQL,PostgreSQL, FireBird,… kể cả thương mại như Interbase,… Bài viết đề nghị giải pháp ứng dụng một phần ý tưởng KNT trong các HQTCSDL đó, cũng như khắc phục nhược điểm không thể thực hiện cập nhật gia tăng trongnhiều trường hợp đối với các HQT CSDL có hỗ trợ KNT, bằng cách xây dựng các bẫysự kiện (trigger) để thực hiện cập nhật gia tăng các bảng KNT.2. KNT trong các HQT CSDL Ý tưởng ứng dụng KNT – kết quả thực thi được giữ lại của các truy vấn, xuấthiện từ những năm 80 của thế kỷ trước, nhưng KNT chỉ được triển khai thực tế cáchđây không lâu trong các phiên b cuối cùng của một số HQT CSDL thương mại như ảnOracle, MS SQL Server, ...

Tài liệu được xem nhiều:

Gợi ý tài liệu liên quan: