1. Trang chủ
  2. » Công Nghệ Thông Tin

Bài giảng Cơ sơ dữ liệu phân tán: Phần 2 - ĐH Sư phạm kỹ thuật Nam Định

119 11 0

Đ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

Tiếp nội dung phần 1, Bài giảng Cơ sơ dữ liệu phân tán: Phần 2 cung cấp cho người học những kiến thức như: Biến đổi truy vấn toàn cục thành các truy vấn mảnh; Tối ưu hóa các chiến lược truy xuất. Mời các bạn cùng tham khảo!

Tập giảng Cơ sở liệu phân tán Chƣơng BIẾN ĐỔI CÁC TRUY VẤN TOÀN CỤC THÀNH CÁC TRUY VẤN MẢNH Một thao tác truy xuất ứng dụng đƣợc biểu diễn nhƣ truy vấn tham chiếu đến quan hệ toàn cục DDBMS phải biến đổi truy vấn thành truy vấn đơn giản mà chúng tham chiếu đến mảnh Chƣơng giải phép biến đổi Có nhiều cách khác để biến đổi truy vấn quan hệ toàn cục đƣợc gọi truy vấn toàn cục (global query) thành truy vấn mảnh đƣợc gọi truy vấn mảnh (fragment query) Các biến đổi khác tạo truy vấn mảnh tƣơng đƣơng theo nghĩa chúng tạo kết Vì lí này, chƣơng giải phép biến đổi tƣơng đƣơng (equivalence transformation), nghĩa quy tắc đƣợc áp dụng cho truy vấn để viết truy vấn thành biểu thức tƣơng đƣơng Các quy tắc tƣơng đƣơng đƣợc sử dụng để đơn giản hóa biểu thức truy vấn (query expression) Ví dụ xác định biểu thức chung phép toán đƣợc “phân tán” cho mảnh Tuy nhiên, điều nhấn mạnh chƣơng tính đầy đủ (completeness) tính đắn (correctness) phép biến đổi Mục tiêu đƣa tập hợp quy tắc biến đổi tƣơng đƣơng bao quát tất khía cạnh liên quan đến phép biến đổi truy vấn Các nội dung chƣơng này: - Các kỹ thuật đƣợc sử dụng hệ thống tập trung để biến đổi truy vấn Trƣớc tiên, đƣa cách biểu diễn truy vấn cách sử dụng truy vấn (query tree) Sau đƣa cách tiếp cận ngữ nghĩa cho phép biến đổi tƣơng đƣơng cuối cho thấy cách biến đổi truy vấn thành đồ thị truy vấn (query graph) để xác định biểu thức chung truy vấn Ở đây, đƣa nhiều nhắc nhở liên hệ chặt chẽ với theo sau Hơn nữa, khía cạnh CSDL phân tán quan trọng so với CSDL tập trung phép biến đổi truy vấn đƣợc đƣa vào môi trƣờng phân tán Các truy vấn toàn cục đƣợc biến đổi thành truy vấn mảnh Chúng ta nêu ánh xạ chuẩn tắc (canomical mapping) cho thấy ánh xạ chuẩn tắc đắn Sau đó, sử dụng phép biến đổi tƣơng đƣơng để biến đổi biểu thức chuẩn tắc (canomical mapping) truy vấn Cơ sở phép biến đổi áp dụng phép toán đại số (algebraic operation) Chẳng hạn phép chiếu phép 175 Tập giảng Cơ sở liệu phân tán chọn, để làm giảm kích thƣớc tốn hạng chúng nhiều tốt mảnh trƣớc truyền liệu nơi Các truy vấn có liên quan đến cách đánh giá việc gom nhóm phần: mệnh đề GROUP BY lệnh SELECT hàm kết hợp (aggregate function) Chúng ta mở rộng đại số quan hệ (relational algebra) để bao quát vấn đề này, sau nêu số phép biến đổi tƣơng đƣơng áp dụng cho phép toán Cơ sở phép toán phân tán việc xử lý đến mảnh Các truy vấn tham số (parametric query), nghĩa truy vấn có chứa điều kiện chọn bao gồm tham số mà giá trị đƣợc xác định thời gian thực Các truy vấn thao tác truy xuất tiêu biểu ứng dụng tham số (parametric application) nhƣ đƣợc nêu chƣơng Chúng ta nêu biện pháp biến đổi tƣơng đƣơng đƣợc sử dụng nhƣ để cải tiến tính hiệu chúng 4.1 Các phép biến đổi tƣơng đƣơng dùng cho truy vấn Một truy vấn quan hệ (relational query) đƣợc biểu diễn cách sử dụng ngôn ngữ khác Ở đây, chúng sử dụng đại số quan hệ ngôn ngữ SQL cho mục đích Hầu hết truy vấn SQL đựơc biến đổi thành biểu thức đại số quan hệ tƣơng đƣơng ngƣợc lại Do đó, ngơn ngữ nêu đƣợc sử dụng để biểu diễn ngữ nghĩa truy vấn Tuy nhiên, diễn dịch biểu thức quan hệ đại số (expression of relational algebra) không đặc tả ngữ nghĩa truy vấn, mà đặc tả chuỗi phép toán) sequence of operations) Từ quan điểm này, hai biểu thức có ngữ nghĩa mơ tả hai chuỗi phép tốn khác Ví dụ 4.1:  MANV, MAQL  MAP=1 (NV)  MAP=1  MANV, MAQL (NV) biểu thức tƣơng đƣơng nhƣng định nghĩa hai chuỗi phép toán khác Trong chƣơng này, quan tâm đến thứ tự thực phép toán, việc sử dụng biểu thức đại số quan hệ ban đầu phân tích phép biến đổi tƣơng đƣơng chúng 4.1.1 Cây toán tử truy vấn 1) Mục đích: - Dùng để biểu diễn truy vấn - Giúp theo dõi thao tác biểu thức - Xác định thứ tự phận mà phép toán phải đƣợc thực cho kết truy vấn 2) Cấu tạo cây: 176 Tập giảng Cơ sở liệu phân tán - Nút lá: chứa quan hệ toàn cục - Các nút trung gian nút gốc: biểu diễn + phép toán ngơi (unary operation) + phép tốn hai ngơi (binary operation) Ví dụ 4.2: Xét hệ thống quản lý kinh doanh cơng ty ví dụ 2.13 có ứng dụng: Đƣa mã nhà cung cấp cung cấp hàng mà có địa Nam Định Truy vấn Q1 tƣơng ứng với biểu thức đại số quan hệ: Q1:  MANCC (  DC= “Nam Định” (NCC >< MANCC Cây toán tử truy vấn Q1: = MANCC KD)) Cây toán tử biểu thức đại số quan hệ đƣợc xem nhƣ phân tích cú pháp (pharse tree) biểu thức đó, giả sử có văn phạm sau đây: R  identifier R  (R) R  un_op R un_op   F  A bin_op    -   F     < NV.MAPPH.MAP (σMAQL100 PH) - NV2 = σLUONG2000  NV  >< NV.MAPPH.MAP σ MAQL100  PH  - TENNV  NV1  NV2  Vì phép kết nối quan hệ phép kết nối biểu thức truy vấn đƣợc viết lại nhƣ sau: - NV1 = NV  (σMAQL100 PH) - NV2 = σLUONG2000  NV   σMAQL100  PH  - TENNV  NV1  NV2  Ta có tốn tử tƣơng ứng với biểu thức Bƣớc 1: Gộp nút tƣơng ứng với quan hệ NV PH + Đặt thừa số phép chọn LUONG phép kết nối cách di chuyển phép chọn lên phía + Gộp nút tƣơng ứng với phép chọn MAQL ta đƣợc nút tƣơng ứng với phép kết nối Ta có đƣợc tốn tử nhƣ sau: Ta đƣợc biểu thức tƣơng ứng với toán tử 182 Tập giảng Cơ sở liệu phân tán NV1= NV  (σMAQL100DEPT) Bƣớc 2: Áp dụng đặc tính thứ 6: NV1 - σLUONG 2000  NV1    LUONG  2000(NV1), ta rút gọn toán tử thành nhƣ sau: Ta đƣợc biểu thức tƣơng ứng với toán tử  TENNV σLUONG  2000  NV  (σMAQL100 PH)   Bƣớc 3: Áp dụng phép biến đổi tƣơng đƣơng (2)  TENNV σLUONG  2000  NV  (σMAQL100 PH)      TENNV MAP,TENNV σLUONG  2000 (NV  (σMAQL100 PH))  Áp dụng phép biến đổi tƣơng đƣơng (5)  TENNV   MAP, TENNV  σLUONG 2000 (NV)  σMAQL100 (PH)  Áp dụng phép biến đổi tƣơng đƣơng (12)  TENNV   MAP, TENNV  σLUONG  2000 (NV    MAP  σMAQL100PH  Ta đƣợc toán tử nhƣ sau: 183 Tập giảng Cơ sở liệu phân tán 4.2 Biến đổi truy vấn toàn cục thành truy vấn mảnh 4.2.1 Biểu thức chuẩn tắc truy vấn mảnh 1) Biểu thức chuẩn tắc Biểu thức chuẩn tắc (canonical expression) biểu thức đại số lƣợc đồ toàn cục biểu thức mà tên quan hệ tồn cục xuất đƣợc thay biểu thức đại số tái tạo quan hệ toàn cục từ mảnh Ví dụ 4.5: Xét lƣợc đồ phân mảnh quan hệ tồn cục PH ví dụ 2.13 PH1=  MAP 10(PH) PH2=  MAP >10 AND MAP < 20 PH3=  MAP  20 (PH) (PH) Cho truy vấn Q2: MAP = 1(PH) Biểu thức chuẩn tắc MAP = 1(PH1  PH2  PH3) 2) Cây toán tử lƣợc đồ phân mảnh Biến đổi tốn tử lƣợc đồ tồn cục thành toán tử lƣợc đồ phân mảnh cách thay nút toán tử lƣợc đồ toàn cục biểu thức tái tạo tƣơng ứng lƣợc đồ phân mảnh 3) Tối ƣu hóa biểu thức chuẩn tắc - Sử dụng phép biến đổi tƣơng đƣơng - Sử dụng tính phân phối phép chọn phép chiếu phép hợp phép kết nối để phân phối việc xử lý đến mảnh Ví dụ 4.6: Xét truy vấn Q1 ví dụ 4.3 với truy vấn Q1 biểu thức tái tạo quan hệ toàn cục NCC PH NCC= NCC1  NCC2 KD= KD1  KD2 Vì phép kết nối phép kết nối nên tốn tử đƣợc biểu diễn nhƣ sau: 184 Tập giảng Cơ sở liệu phân tán Bƣớc 3: Tại Tab Domain Profile, Private Profile, Public Profile chọn Firewall state Off Bƣớc 4: Tạo quy tắc Inbound cho SQL Server - Chọn Inbound Rule/New Rule/Chọn Port/Next - Nhập 1433 mục specific local ports/Next/Next/Next Bƣớc 5: Tạo quy tắc Outbound cho SQL Server 279 Tập giảng Cơ sở liệu phân tán Bƣớc 6: Nhập tên quy tắc mục Name/Chọn Finish b) Thiết lập tƣờng lửa cho máy khách (tƣơng tự) 3) Thiết lập dịch vụ SQL Server a) Thiết lập dịch vụ máy chủ Bƣớc 1: Mở SQL Server Configuration Manager/SQL Server Services/Thiết lập để tất dịch vụ trạng thái Running 280 Tập giảng Cơ sở liệu phân tán Bƣớc 2: Chọn SQL Server Network Configuration/Chọn MSSQLSERVER/Chọn chuột phải TCP IP/Chọn Properties Protocols for Bƣớc 3: Nhập địa IP cho máy chủ 192.168.218.94 mục IP Address mục IP1, nhập địa IP 192.168.218.1 DNS mục IP Address mục IP2 Bƣớc 4: Kiểm tra máy chủ nhìn thấy máy trạm chƣa mạng hay chƣa 281 Tập giảng Cơ sở liệu phân tán Bƣớc 5: Kiểm tra đăng nhập máy trạm từ SQL Server máy chủ tài khoản sa Bƣớc 6: Kiểm tra đăng nhập máy chủ từ SQL Server máy trạm tài khoản sa b) Trên máy trạm (làm tƣơng tự) 4) Thiết lập phân tán máy chủ a) Tạo Local Publication: Bƣớc 1: Đăng nhập SQL Server tài khoản sa Bƣớc 2: Tạo sở liệu Test có bảng KH gồm trƣờng ID, Name, Age Bƣớc 3: Chọn mục Replication/Chọn Local Publications/Chọn new Local Publication/Chọn Next 282 Tập giảng Cơ sở liệu phân tán Bƣớc 4: Chọn sở liệu Test/Chọn Next Bƣớc 5: Chọn Merge publication/Chọn Next Bƣớc 6: Chọn mục SQL Server 2008/Chọn Next 283 Tập giảng Cơ sở liệu phân tán Bƣớc 7: Chọn mục Tables/Chọn Next Bƣớc 8: Chọn Next 284 Tập giảng Cơ sở liệu phân tán Bƣớc 9: Bỏ mục chọn Schedule the Snapshot Agent to run at the following time/Chọn Next Bƣớc 10: Bỏ mục chọn Schedule the Snapshot Agent to run at the following time/Chọn Next 285 Tập giảng Cơ sở liệu phân tán Bƣớc 11: Chọn mục Security Settings Bƣớc 12: Chọn mục Run under the SQL Server Agent service account/Chọn mục Using the following SQL Server login: - Nhập tài khoản sa vào mục Login - Nhập mật vào mục Password - Nhập lại mật vào mục Confirm Password - Chọn OK/Chọn Next 286 Tập giảng Cơ sở liệu phân tán Bƣớc 13: Nhập tên mục Publication Name/Chọn Finish Bƣớc 14: Chọn Close b) Tạo Subscriptions Bƣớc 1: Chọn phải chuột lên Publication/chọn New Subscriptions Bƣớc 2: Chọn Next 287 Tập giảng Cơ sở liệu phân tán Bƣớc 3: Thêm máy khách Bƣớc 4: Tạo sở liệu cho máy khách - Chọn New Database - Nhập tên sở liệu cho máy khách tên sở với máy chủ - Chọn Next 288 Tập giảng Cơ sở liệu phân tán Bƣớc 5: Chọn nút … để đồng hóa liệu Bƣớc 6: Nhập thơng tin đăng nhập sở liệu máy khách - Chọn mục Run under the SQL Server Agent service account - Chọn mục Using the following SQL Server login - Nhập tài khoản sa vào mục Login - Nhập mật vào mục Password - Nhập lại mật vào mục Confirm Password - Chọn OK 289 Tập giảng Cơ sở liệu phân tán Bƣớc 7: Chọn Next/Next/Close 5) Đồng hóa liệu Bƣớc 1: Thêm ghi từ máy chủ 290 Tập giảng Cơ sở liệu phân tán Bƣớc 2: Đồng liệu máy khách - Chọn liệu máy khách/Chọn View Syschronization Status - Chọn Start 291 Tập giảng Cơ sở liệu phân tán TÀI LIỆU THAM KHẢO [1] Nguyễn Bá Tƣờng Nhập môn Cơ sở liệu phân tán NXB khoa học kỹ thuật 2010 [2] Cao Tùng Anh Cơ sở liệu phân tán Đại học Kỹ thuật Cơng nghệ TP.Hồ Chí Minh 2013 [3] Phạm Thế Quế Cơ sở liệu phân tán Học Viện Cơng nghệ Bƣu viễn thơng 2013 [4] Nguyễn Trung Trực Cơ sở liệu phân bố NXB Đại học Quốc gia 2004 [5] Patrick Valduriez Nguyên lý hệ sở liệu phân tán Tập Biên dịch Trần Đức Quang NXB Thống kê 1999 [6] Michanel V Mannino, “ Database Application Development & Design”, Published by McGaw-Hill /Irwin, New Yor.k, 2001 [7] Abram Siberschatz, Henry F.Korth, S.Sudarshan “Database Systems Concepts”, Published by McGaw-Hill /Irwin, New Yor.k, 2002 [8] M Tamer Ozsu and Patrick Vaduriez, “ Principles of Distributed Database Systems”, Prentice-Hall 2003 i ...  [R: qR] - [R - S: qR]  [R (R - S): qR]  [R  S:qR] (4 .2. a) [S: qS]  [R: qR]  [S: qS] - ([S: qS] - [R: qR]  [S: qS] - [S - R: qS]  [S- (S - R): qS] - [R: qR]  [S  R: qS] (4.2b) Trên thực... nhiều 20 00 181 Tập giảng Cơ sở liệu phân tán Ta có biểu thức truy vấn: - NV1 = NV >< NV.MAPPH.MAP (σMAQL100 PH) - NV2 = σLUONG? ?20 00  NV  >< NV.MAPPH.MAP σ MAQL100  PH  - TENNV  NV1  NV2... đích: - Dùng để biểu diễn truy vấn - Giúp theo dõi thao tác biểu thức - Xác định thứ tự phận mà phép toán phải đƣợc thực cho kết truy vấn 2) Cấu tạo cây: 176 Tập giảng Cơ sở liệu phân tán - Nút

Ngày đăng: 08/06/2021, 14:16

Xem thêm:

TỪ KHÓA LIÊN QUAN

w