Tổng quan xử lý vấn tin (CSDL phân tán)

13 399 0
Tổng quan xử lý vấn tin (CSDL phân tán)

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

CHƯƠNG IV  TỔNG QUAN VỀ XỬ LÝ VẤN TIN PGS.NCVC.TS LÊ HUY THẬP n ENO TITLE SAL Elect Eng Syst Anal Mech.Eng Progammer 40000 34000 27000 24000 Quan hệ PAY E1 E2 E3 E4 E5 E6 E7 E8 ENAME TITLE J.Doe M Smith A.Lee J.Mmith B.Casey L.Chu R.David J.Jones Elect Eng Syst Anal Mech.Eng Programmer Syst.Anal Elect.Eng Mech.Eng Syst Anal Quan hệ EMP n n ENO PNO RESP DUR E1 E2 E2 E3 E3 E4 E5 E6 E7 E8 P1 P1 P2 P3 P4 P2 P2 P4 P3 P3 Manager Analyst Analyst Consultant Engineer Programmer Manager Manager Engineer Manager 12 24 10 48 18 24 48 36 40 Title- Chuyên môn SAL: Salary-Lương Elect Eng Kỹ sư điện tử Syst Anal Nhà phân tích hệ thống Mech.Eng Kỹ sư khí Programmer Lập trình viên EMP: Employee-Nhân viê PAY: Payment- Trả lương Proj: Project-Dự án ASG: assignment-Phân nhiệm Resp: responsibility-Trách nhiệm Manager: Người quản lý Analyst: Nhà phân tích Consultant: Tư vấn Budget: Ngân sách PNO PNAME BUDGET LOC P1 P2 P3 P4 Instrumentation Dabatase Develop CAD/ CAM Maintenance 150000 135000 250000 310000 Montreal New York New York Paris Quan hệ PROJ Quan hệ ASG n MaNV TrinhDoCM Luong Kỹ sư điện Phân tích thiết kế hệ thống Kỹ sư khí Lập trình viên 4000 3400 2700 2400 NV1 NV2 NV3 NV4 NV5 NV6 NV7 NV8 Quan hệ TraLuong TenNV TrinhDoCM Nguyễn Văn Bổng Lê Hồng Ngoc Hoàng Trung Mã Trịnh Kim Thanh Ngô Đình Vinh Trần Mỹ Lệ Lê Hồng Hạnh Nguyễn Trường Tam Kỹ sư điện Phân tích thiết kế hệ thống Kỹ sư khí Lập trình viên Phân tích thiết kế hệ thống Kỹ sư điện Kỹ sư khí Phân tích thiết kế hệ thống Quan hệ NhanVien n n MaNV MaDuAn ChucVu ThoiGianLV NV1 NV2 NV2 NV3 NV3 NV4 NV5 NV6 NV7 NV8 DA1 DA1 DA2 DA3 DA4 DA2 DA2 DA4 DA3 DA3 Giám đốc Nhân viên phân tích thiết kế Nhân viên phân tích thiết kế Nhân viên tư vấn Kỹ sư Lập trình viên Giám đốc Giám đốc Kỹ sư Giám đốc 12 24 10 48 18 24 48 36 40 MaD uAn TenDuAn NganSac h ViTri DA1 DA2 DA3 DA4 Thiết bị đo đạc Phát triển CSDL CAD/ CAM Bảo dưỡng 150000 135000 250000 310000 Hải Phòng Hà Nội Hà Nội TP.Hồ Chí Minh Quan hệ DuAn Quan hệ PhanNhiem 4.1 Bài toán xử lý vấn tin Biến đổi câu vấn tin cấp cao (SQL) thành câu vấn tin cấp thấp (Relational Algebra = RA) - Câu vấn tin RA phải đạt tính đắn lẫn tính hiệu Một biến đổi xem đắn, RA cho kết - Có nhiều RA sử dụng tài nguyên - Cần phải chọn câu vấn tin RA để có tổng chi phí nhỏ Ví dụ 4.1 –1 Xét quan hệ: EMP ASG “Hãy cho tên nhân viên (ENAME) quản lý (Manager) dự án đó”? Câu SQL SELECT ENAME FROM EMP, ASG WHERE EMP.ENO = ASG.ENO AND ASG.RESP = “Manager” Hai câu AQL là: ENAME(RESP= “Manager”EMP.ENO=ASG.ENO(EMPx ASG)) (*) Và ENAME(EMP ENO(RESP = “Manager” (ASG))) (**) Rõ ràng (**) dùng sử dụng tài nguyên Trong quan hệ phân tán, xét phép toán quan hệ thực nút, chưa đủ thông tin để diễn tả chiến lược thực câu truy vấn Cần bổ sung thêm việc trao đổi liệu vị trí Như vậy, thể xử lý vấn tin phân tán, phép toán quan hệ thực nút, cần phải thực hiện: Chọn thứ tự thực phép toán đại số quan hệ câu vấn tin, Chọn vị trí để xử lý liệu Cách biến đổi liệu Do yêu cầu mà không gian lời giải tăng lên làm cho việc xử lý vấn tin phân tán phức tạp Ví dụ 4.1–2 Câu hỏi “Tìm tên nhân viên quản lý dự án đó” Xét RA (**) ENAME(EMPENO(RESP = “Manager”(ASG))) (xem ** ví dụ 4.1-1 ) Giả sử EMP ASG phân mảnh ngang sau: EMPH1 = ENO  “E3” (EMP) EMPH2 = ENO > “E3” (EMP) ASGH1 = ENO  “E3” (ASG) ASGH2 = ENO > “E3” (ASG) Các mảnh ASGH1, ASGH2, EMPH1, EMPH2 theo thứ tự lưu vị trí 1, 2, 3, k.quả lưu vị trí Có hai chiến lược A B lưu giữ thực hiên câu vấn tin (hình 4.1) : Nhận xét: Chiến lược A: EMP ASG phân mảnh theo cách để thực song song phép chọn phép nối Chiến lược B: Tập trung liệu vị trí lưu kết trước xử lý câu vấn tin (a) Hình 4.1 Chiến lược A Vị trí Rerult = EMP1’  EMP2’ EMP1’ EMP2’ Vị trí EMP1’ = EMPH1 ENO ASG1’ Vị trí ASG1’ = RESP = ASG1’ “Manager” (ASGH1) Vị trí EMP2’ = EMPH2 ENO ASG2’ ASG2’ ASG2’ = RESP = “Manager” Vị trí (ASGH2) (b)Hình 4.1 Chiến lược B Vị trí Result = (EMPH1  EMPH2) ENO (RESP = “Manager” (ASGH1  ASGH2)) Vị trí Vị trí Vị trí Vị trí 4.2 MỤC TIÊU CỦA XỬ LÝ VẤN TIN Chỉ tiêu đánh giá tổng chi phí thời gian cần để xử lý phép toán vị trí truyền liệu vị trí Bao gồm: • Chi phí cho CPU thực thao tác liệu nhớ • Chi phí xuất nhập cho thao tác xuất nhập vào đĩa, băng từ,… • Chi phí truyền liêu vị trí tham gia vào trình thực vấn tin Bao gồm chi phí phải trả phải xử lý thông báo (định dạng, giải định dạng,…) truyền liệu mạng Phép toán 4.3 ĐỘ PHỨC TẠP CỦA CÁC THUẬT TOÁN (Hình 4.2) Độ phức tạp Chọn, Chiếu (Không loại bỏ trùng lặp) O(n) Chiếu (Có loại bỏ trùng lặp), Gộp nhóm O(n+logn) Nối, Nối nửa, Chia, Các phép toán tập hợp O(n+logn) Tích Dercartes O(n2) Hình Hình 4–2 Độ phức tạp phép toán đại số quan hệ 4.4 MÔ TẢ ĐẶC TRÝNG CỦA XỬ LÝ VẤN TIN 4.4.1 Ngôn ngữ dùng cho xử lý vấn tin - Ngôn ngữ thứ dùng giai đoạn phân rã vấn tin: Các phép toán quan hệ thường SQL - Ngôn ngữ thứ – Ngôn ngữ thành phẩm: AQL có bổ sung thêm việc truyền tin Các phép toán loại ngôn ngữ cài đặt trực tiếp hệ thống Việc xử lý vấn tin thực ngôn ngữ thứ hai 4.4.2 Các kiểu tối ưu hoá 1/ Tối ưu hoá chọn AQL tốt Bằng cách tính chi phí cho phương án chọn phương án có chi phí thấp 2/ Tối ưu hoá phương pháp tìm kiếm vét cạn Tất AQL xem xét, phương pháp thường có chi phí cao 3/ Phương pháp ngẫu nhiên Lấy ngẫu nhiên số AQL, tìm AQL tốt Phương pháp giảm chi phí, nhiên kết lời giải “cận” tối ưu 4/ Phương pháp heuristic Một heuristic quan trọng hệ phân tán thay phép nối tổ hợp nối nửa, nhằm giảm tối đa liệu tham gia vào phép tính, tức hạ thấp chi phí truyền liệu xử lý CPU 4.4.3 Thời điểm tối ưu hoá (i) Tối ưu hoá tĩnh Được thực vào lúc biên dịch, ví dụ, tìm AQL tốt trước thực CÂU VấN TIN (ii) Tối ưu hoá động Thực vào lúc thực câu vấn tin Tại thời điểm thực CVT chọn thao tác tốt dựa kết thu trước Ưu điểm phương pháp kích thước thực quan hệ trung gian có sẵn để vấn tin, làm giảm xác suất chọn sai Khuyết điểm phải lặp lại bước tối ưu hoá cho lần thực vấn tin (iii) Tối ưu hoá hỗn hợp Cơ phương pháp tĩnh kết hợp với trình tối ưu hoá động lúc thực 4.4.4 Số liệu thống kê Hiệu Tối Ưu Hoá (TƯH) vấn tin dựa vào số liệu thống kê liệu CSDL Tối ưu hoá động, cần dựa vào số liệu thống kê để chọn thao tác khởi đầu để thực TƯH Tối ưu hoá tĩnh, dựa vào số liệu thống kê CSDL nhiều kích thước quan hệ trung gian đánh giá có thông tin thống kê 4.4.5 Vị trí định Cách tiếp cận tập trung: Một vị trí đề chiến lược tìm kiếm, ta gọi định tập trung Quyết định tập trung đơn giản đòi hỏi phải có thông tin toàn CSDL phân tán Cách tiếp cận phân tán: Nhiều vị trí đề chiến lược tìm kiếm mình, vị trí đòi hỏi thông tin cục Cách tiếp cận hỗn hợp: Một vị trí đưa định vị trí khác đưa chọn lựa cục 4.4.6 Tận dụng mảng nhân Câu vấn tin “phân tán” diễn tả quan hệ toàn cục phân rã thành câu vấn tin mảnh Quá trình gọi cục hoá liệu Nhiệm vụ cục hoá liệu có liên quan CVT Để tăng hiệu quả, nhân mảnh cho nhiều vị trí Một số thuật toán lợi dụng tồn mảnh nhân nhằm làm giảm số lần truyền liệu Do vậy, thuật toán TƯH phức tạp có nhiều mảnh nên có nhiều chiến lược thực thi tương đương 4.4.7 Sử dung nối nửa Nối nửa làm giảm kích thước quan hệ trung gian, làm giảm di liệu cần trao đổi vị trí Tuy nhiên sử dụng nối nửa làm tăng số lượng thông báo thời gian xử lý nội 10 4.5 MÔ HÌNH CÁC TẦNG XỬ LÝ VẤN TIN (XEM HÌNH 4–3) Tầng phân rã vấn tin Lược đồ toàn cục AQL quan hệ phân tán Vị trí điều khiển Tầng cục hoá liệu Lược đồ mảnh Vấn tin theo mảnh Số liệu mảnh Tầng tối ưu hoá toàn cục Các vị trí cục Vấn tin theo mảnh kèm với phép toán truyền Tầng ối ưu hoá cục Lược đồ cục Vấn tin cục tối ưu Hình 4-3 Các tầng xử lý vấn tin 11 4.5.1 Tầng phân rã vấn tin Chuyển SQL sang AQL quan hệ toàn cục Thông tin cần cho trình biến đổi mô tả lược đồ khái niệm toàn cục, quan hệ toàn cục Thông tin việc phân tán liệu không dùng tầng mà dùng tầng Vì vậy, kỹ thuật sử dụng tầng DBMS tập trung Phân rã vấn tin tầng chia làm bước: Chuyển SQL sang AQL ý dùng độ ưu tiên toán tử logic Phân tích ngữ nghĩa chuẩn hoá để phát loại bỏ câu vấn tin sai Câu vấn tin đơn giản hoá cách loại bỏ vị từ thừa Câu vấn tin AQL tái cấu trúc thành SQL 4.5.2 Tầng cục hoá liệu Vai trò tầng cục hoá liệu câu vấn tin nhờ sử dụng thông tin phân bố liệu Xác định mảnh tham gia vào CVT biến đổi CVT phân tán thành câu vấn tin mảnh Quan hệ gốc, nghĩa trước phân mảnh tái thiết lại, sử dụng chương trình, tức sử dụng RA mảnh gọi chương trình cục hoá Câu vấn tin theo mảnh tạo qua hai bước: Câu vấn tin phân tán Toàn Cục (TC) chuyển thành câu vấn tin theo mảnh Cục Bộ (CB)) dựa vào chương trình tái thiết Câu vấn tin đơn giản hoá tái cấu trúc để tạo câu vấn tin tốt 12 4.5.3 Tầng tối ưu hoá vấn tin toàn cục Đầu vào tầng CVT cục bộ, nghĩa câu vấn tin đại số mảnh Mục đích tối ưu hoá vấn tin tìm chiến lược thực thi tốt câu vấn tin Hàm mục tiêu tổng chi phí nhỏ Tổng chi phí bao gồm ba loại chi phí: chi phí xuất nhập, chi phí CPU chi phí truyền tin Trong môi trường phân tán, xét chi phí truyền, xem yếu tố chi phí quan trọng nhất, tất nhiên với WAN, chi phí truyền lớn nhiều so với việc xử lý cục 4.5.4 Tầng tối ưu hoá vấn tin cục Tầng thực vị trí có mảnh cần cho câu vấn tin Mỗi câu vấn tin thực vị trí nên gọi vấn tin cục Câu vấn tin cục tối ưu hoá cách sử dụng lược đồ cục vị trí Tại vị trí chọn thuật toán để thực phép toán quan hệ 13 [...]... TẦNG XỬ LÝ VẤN TIN (XEM HÌNH 4–3) Tầng phân rã vấn tin Lược đồ toàn cục AQL trên các quan hệ phân tán Vị trí điều khiển Tầng cục bộ hoá dữ liệu Lược đồ mảnh Vấn tin theo mảnh Số liệu trên các mảnh Tầng tối ưu hoá toàn cục Các vị trí cục bộ Vấn tin theo mảnh kèm với các phép toán truyền Tầng ối ưu hoá cục bộ Lược đồ cục bộ Vấn tin cục bộ đã tối ưu Hình 4-3 Các tầng xử lý vấn tin 11 4.5.1 Tầng phân rã vấn. .. để tạo ra câu vấn tin tốt nhất 12 4.5.3 Tầng tối ưu hoá vấn tin toàn cục Đầu vào của tầng này là CVT cục bộ, nghĩa là câu vấn tin đại số trên các mảnh Mục đích của tối ưu hoá vấn tin là tìm ra một chiến lược thực thi tốt nhất câu vấn tin này Hàm mục tiêu là tổng chi phí nhỏ nhất Tổng chi phí bao gồm ba loại chi phí: chi phí xuất nhập, chi phí CPU và chi phí truyền tin Trong môi trường phân tán, chỉ... phân tán thành câu vấn tin trên các mảnh Quan hệ gốc, nghĩa là trước khi phân mảnh được tái thiết lại, rồi sử dụng chương trình, tức là sử dụng RA trên các mảnh được gọi là chương trình cục bộ hoá Câu vấn tin theo mảnh được tạo ra qua hai bước: 1 Câu vấn tin phân tán Toàn Cục (TC) được chuyển thành câu vấn tin theo mảnh Cục Bộ (CB)) dựa vào chương trình tái thiết của nó 2 Câu vấn tin được đơn giản hoá... chỉ xét chi phí truyền, xem nó là yếu tố chi phí quan trọng nhất, tất nhiên chỉ đúng với các WAN, ở đó chi phí truyền lớn hơn rất nhiều so với việc xử lý cục bộ 4.5.4 Tầng tối ưu hoá vấn tin cục bộ Tầng này được thực hiện tại các vị trí có các mảnh cần cho câu vấn tin Mỗi câu vấn tin con được thực hiện tại một vị trí nên được gọi là vấn tin cục bộ Câu vấn tin cục bộ sẽ được tối ưu hoá bằng cách sử dụng... logic 2 Phân tích ngữ nghĩa đã được chuẩn hoá để phát hiện và loại bỏ các câu vấn tin sai 3 Câu vấn tin đúng được đơn giản hoá bằng cách loại bỏ các vị từ thừa 4 Câu vấn tin AQL sẽ được tái cấu trúc thành SQL 4.5.2 Tầng cục bộ hoá dữ liệu Vai trò của tầng này là cục bộ hoá dữ liệu của câu vấn tin nhờ sử dụng các thông tin về sự phân bố dữ liệu Xác định các mảnh tham gia vào CVT và biến đổi CVT phân tán... vấn tin 11 4.5.1 Tầng phân rã vấn tin Chuyển SQL sang các AQL trên các quan hệ toàn cục Thông tin cần cho quá trình biến đổi này được mô tả trong lược đồ khái niệm toàn cục, và các quan hệ toàn cục Thông tin về việc phân tán dữ liệu không được dùng ở tầng này mà được dùng ở tầng tiếp theo Vì vậy, các kỹ thuật được sử dụng ở tầng này là của các DBMS tập trung Phân rã vấn tin ở tầng này được chia làm 4... thực hiện tại một vị trí nên được gọi là vấn tin cục bộ Câu vấn tin cục bộ sẽ được tối ưu hoá bằng cách sử dụng lược đồ cục bộ của vị trí Tại mỗi vị trí có thể chọn thuật toán để thực hiện các phép toán quan hệ 13 ... Nội TP.Hồ Chí Minh Quan hệ DuAn Quan hệ PhanNhiem 4.1 Bài toán xử lý vấn tin Biến đổi câu vấn tin cấp cao (SQL) thành câu vấn tin cấp thấp (Relational Algebra = RA) - Câu vấn tin RA phải đạt tính... phức tạp phép toán đại số quan hệ 4.4 MÔ TẢ ĐẶC TRÝNG CỦA XỬ LÝ VẤN TIN 4.4.1 Ngôn ngữ dùng cho xử lý vấn tin - Ngôn ngữ thứ dùng giai đoạn phân rã vấn tin: Các phép toán quan hệ thường SQL - Ngôn... cục Vấn tin cục tối ưu Hình 4-3 Các tầng xử lý vấn tin 11 4.5.1 Tầng phân rã vấn tin Chuyển SQL sang AQL quan hệ toàn cục Thông tin cần cho trình biến đổi mô tả lược đồ khái niệm toàn cục, quan

Ngày đăng: 21/01/2016, 18:15

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan