Bài giảng cơ sở dữ liệu - Bài 2: Tổng quan về cơ sở dữ liệu phân tán

Hỗ trợ hệ điều hành  Hệ điều hành với hỗ trợ đúng cho các thao tác CSDL  Phân chia giữa yêu cầu xử lý với mục tiêu chung và yêu cầu xử lý CSDL  Các hệ thống mở và Interoperability  Các hệ đa CSDL phân tán  Các kịch bản khả dĩ hơn  Các vấn đề song song

pdf55 trang | Chia sẻ: huongthu9 | Lượt xem: 605 | Lượt tải: 0download
Bạn đang xem trước 20 trang tài liệu Bài giảng cơ sở dữ liệu - Bài 2: Tổng quan về cơ sở dữ liệu phân tán, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
1Bài 2: Tổng quan về CSDL phân tán PGS.TS. Đỗ Phúc Khoa Hệ thống thông tin Trường Đại học Công nghệ thông tin 2Nội dung  Giới thiệu  Hệ quản trị CSDL phân tán  Vấn đề  Các tiến bộ hiện hành 3Hệ thống tập tin program 1 data description 1 program 2 data description 2 program 3 data description 3 File 1 File 2 File 3 4Quản trị CSDL CSDL Hệ QTCSDL Application program 1 (with data semantics) Application program 2 (with data semantics) Application program 3 (with data semantics) Mô tả Xử lý Điều khiển 5Tiến bộ Công nghệ CSDL Mạng máy tính Tích hợp Phân tán Tích hợp Tích hợp ≠ Phân tán Hệ CSDL phân tán 6Tính toán phân tán Distributed Computing  Khái niệm chưa được thống nhất về định nghĩa  Nhiều phần tử xử lý tự trị ( không nhất thiết phải đồng chủng) được kết nối qua mạng máy tính và hợp tác để thực hiện công việc được giao. 7Tính toán phân tán Distributed Computing  Các thuật ngữ đồng nghĩa  distributed function  distributed data processing  multiprocessors/multicomputers  satellite processing  backend processing  dedicated/special purpose computers  timeshared systems  functionally modular systems 8 Xử lý logic  Các chức năng  Dữ liệu  Kiểm soát Phân tán 9Hệ CSDL phân tán  CSDL phân tán (distributed database - DDB) là tập gồm nhiều CSDL có liên kết logic phân tán trên mạng máy tính.  Hệ Quản trị CSDL phân tán (D–DBMS) là phần mềm quản trị CSDLPT và cung cấp cơ chế truy cập giúp người sử dụng không nhận biết được sự phân tán.  Hệ CSDL phân tán (DDBS) = DDB + D– DBMS 10 Cái gì không phải là Hệ CSDL phân tán - DDBS?  Hệ máy tính phân chia thời gian (timesharing computer system)  Hệ đa xử lý  Hệ CSDL nằm trên một trong các node của mạng- đây là CSDL tập trung trên node của mạng. 11 Hệ quản trị CSDL tập trung trên mạng Site 5 Site 1 Site 2 Site 3Site 4 Communication Network Side: vị trí 12 Môi trường hệ QTCSDL phân tán Site 5 Site 1 Site 2 Site 3Site 4 Communication Network 13 Các ngầm định  Dữ liệu được nhân bản ở một số vị trí, mỗi vị trí bao gồm logic chỉ một bộ xử lý.  Các bộ xử lý ở các vị trí khác nhau được kết nối qua mạng máy tính, không có bộ đa xử lý  Các hệ CSDL song song  CSDL phân tán là CSDL chứ không phải tập hợp các tập tin, dữ liệu được liên kết logic như được trình bày trong các mẩu truy vấn của người sữ dụng  Mô hình dữ liệu quan hệ  Hệ QTCSDLPT là một hệ QTCSDL đầy đủ  Không phải là hệ tập tin từ xa, không phải là hệ giao tác 14 Kiến trúc bộ nhờ dùng chung Shared-Memory Architecture Ví dụ : hệ đa xử lý đối xứng (Sequent, Encore) và một số máy tính mainframes (IBM3090, Bull's DPS8) P1 Pn M D 15 Kiến trúc đĩa dùng chung Shared-Disk Architecture Ví dụ : DEC's VAXcluster, IBM's IMS/VS Data Sharing D P1 M1 Pn Mn 16 Kiến trúc riêng lẻ Shared-Nothing Architecture  Examples : Teradata's DBC, Tandem, Intel's Paragon, NCR's 3600 and 3700 P1 M1 D1 Pn Mn Dn 17 Cơ sở dữ liệu phân tán  Dữ liệu được phân tán nhiều nơi  Ứng dụng cục bô chạy ở một nơi và chỉ sử dụng dữ liệu ở nơi này  Ứng dụng toàn cục được chạy và sử dụng dữ liệu ở nhiều vị trí. 18 Đặc điểm CSDLPT  Kiểm soát tập trung  Quản trị CSDL cục bộ  Quản trị CSDL toàn cục  Tự trị từng vị trí 19 Khác biệt giữa CSDL tập trung và CSDLPT  Độc lập dữ liệu  Trong suốt dữ liệu  Trong suốt phân mảnh  Không nhìn thấy các mảnh  Xem được các quan hệ toàn cục  Lược đồ toàn cục  Trong suốt vị trí (site)  Không thấy các quan hệ  Thấy các mảnh  Lược đồ phân mảnh 20 Khác biệt giữa CSDL tập trung và CSDLPT  Trong suốt nhân bản  Thấy các mảnh  Không thấy nhân bản các mảnh  Trong suốt ánh xạ cục bộ  Thấy các quan hệ cục bộ  Không thấy CSDL vật lý  Trong suốt phân tán 21 Khác biệt giữa CSDL tập trung và CSDLPT  Do dữ liệu được nhân bản ở nhiều vị trí  Ứng dụng chỉ đọc  Ứng dụng cập nhật  Nhược điểm  Tính nhất quán  Tốn vùng nhớ  Ưu điểm  Tính cục bộ của ứng dụng cao  Tính sẵn sàng của dữ liệu 22 Khác biệt giữa CSDL tập trung và CSDLPT  Cấu trúc phức tạp gồm nhiều máy  Tối ưu hóa  Toàn cục  Cục bộ  Tính toàn vẹn dữ liệu  Tính riêng biệt và bảo mật dữ liệu  Phân quyền truy cập  Bảo mật CSDL và mạng 23 Tại sao sử dụng CSDL phân tán  Các tổ chức có cấu trúc phân tán  Xu thế phân tán của các tổ chức  Cần kết nối các CSDL có sẵn  Nhiều CSDL đã có  Sự lớn mạnh của tổ chức  Có thêm các đơn vị mới  Giảm chi phí truyền thông  Tăng ứng dụng cục bộ làm giảm chi phí truyền thông 24 Tại sao sử dụng CSDLPT  Nâng cao hiệu suất  Cơ chế xử lý song song  Phân mảnh dữ liệu theo ứng dụng làm cực đại hóa tính cục bộ của ứng dụng  Tăng độ tin cậy và tính sẵn sàng  Do dư thừa dữ liệu nên tính sẳn sàng cao  Cần đảm bảo độ tin cậy của dữ liệu 25 Các thành phần của hệ QTCSDL phân tán  Truyền thông dữ liệu ( DC: data communication)  Nhận diện yêu cầu truy xuất dữ liệu của ứng dụng tại trạm cuối  Trả kết quả về cho trạm  Quản trị CSDL (DB: database)  Quản trị CSDL  Thực hiện các yêu cầu của ứng dụng: xử lý dữ liệu 26 Các thành phần của hệ QTCSDL phân tán  Từ điển dữ liệu (DD: data dictionary)  Lưu trữ thông tin về các đối tượng trong CSDL  Lưu trữ thông tin về sự phân tán dữ liệu tại các nơi  CSDL phân tán ( Distributed DB)  Liên lạc giữa các nơi, yêu cầu và nhận kết quả. 27 Các thành phần của hệ QTCSDL phân tán DC: truyền thông dữ liệu DD từ điển ; DB: CSDL DDB: CSDLPT 28 Các mức trong suốt phân tán  Trong hệ CSDL phân tán, những người thiết kế hệ thống đã xây dựng lên một hệ các phần mềm phục vụ yêu cầu người dùng trên CSDL đã có sẵn.  Hình dưới đây trình bày kiến trúc chung của CSDL phân tán. Tất nhiên kiến trúc này không biểu diễn tường minh cho mọi hệ cơ sở dữ liệu phân tán. Các mức của CSDLPT được trình bày mang tính khái niệm thích hợp để dễ hiểu về tổ chức của các cơ sở dữ liệu phân tán nói chung. 29 Các mức trong suốt phân tán Sơ đồ phân mảnh Sơ đồ cấp phát Sơ đồ ánh xạ địa phương 1 Sơ đồ ánh xạ địa phương 2DBMS ở vị trí 1 DBMS ở vị trí 2 Cơ sở dữ liệu 1 Cơ sở dữ liệu 2 Sơ đồ toàn thể 30 Các mức trong suốt phân tán  Mức đỉnh của lược đồ là sơ đồ toàn thể: Mô tả mọi dữ liệu nằm trong cơ sở dữ liệu phân tán như không bị phân tán.  Mô hình dữ liệu sử dụng để xác định sơ đồ toàn thể để xác định cách thức ánh xạ đến những mức khác của cơ sở dữ liệu phân tán.  Sơ đồ toàn thể xác định một tập các quan hệ chung nhất của hệ thống. 31 Các mức trong suốt phân tán  Mỗi quan hệ có thể chia ra các phần không chồng lên nhau gọi là phân mảnh.  Có nhiều cách chia phân mảnh: chia theo chiều ngang, chia theo chiều dọc và chia theo kiểu hỗn hợp theo chiều ngang và chiều dọc.  Ánh xạ này giữa quan hệ và các phân mảnh được xác định trong sơ đồ phân đoạn. Ánh xạ theo kiểu 1:n (một quan hệ sang nhiều phân mảnh là một phân mảnh tương ứng một quan hệ và một quan hệ tương đương với một số phân mảnh. Phân mảnh xác định bởi một quan hệ qua chỉ số (chỉ số đoạn dữ liệu). 32 Các mức trong suốt phân tán  Phân mảnh là phần logic của quan hệ, được đặt vật lý tại một hay vài vị trí trên mạng máy tính.  Sơ đồ cấp phát xác định những vị trí đặt phân mảnh.  Kiểu ánh xạ xác định trong sơ đồ cấp phát cho phép nhận ra một cơ sở dữ liệu phân tán là dư thừa hay không dư thừa 33 Các mức trong suốt phân tán  Về mặt hình thức ánh xạ thường từ một quan hệ sang nhiều phân mảnh, trong trường hợp ánh xạ 1:1 thì một phân mảnh được ánh xạ từ một quan hệ.  Mọi phân mảnh dữ liệu tương ứng với cùng một quan hệ R và đặt ở cùng vị trí j tạo ra “ảnh vật lý” của quan hệ R ở vị trí j. Vì vậy có ánh xạ 1:1 giữa ảnh vật lý và một cặp (quan hệ, phân mảnh). Các mức trong suốt phân tán  Mỗi ảnh vật lý có thể được chỉ định bởi một tên quan hệ và một chỉ số vị trí.  Để phân biệt ảnh vật lý, quan hệ với đoạn dữ liệu, ký hiệu Rj chỉ ảnh vật lý của quan hệ R ở vị trí j.  Thuật ngữ trong suốt mô tả bằng bản sao của phân mảnh tham chiếu đến vị trí lưu trữ và bản sao xác định qua tên quan hệ và hai chỉ số (chỉ số đoạn và chỉ số vị trí). 34 35 Các mức trong suốt phân tán  Trong kiến trúc lược đồ trên có ba mức độ độc lập theo thứ tự giảm: mức tổng thể, mức cấp phát và mức ánh xạ. Vì vậy, ở mức thấp hơn cần thiết phải ánh xạ sang mức cao hơn. Việc ánh xạ này gọi là sơ đồ ánh xạ và phụ thuộc vào kiểu của cơ sở dữ liệu địa phương. Trong hệ thống đồng nhất mức độ độc lập có một số kiểu khác nhau khi ánh xạ địa phương ở các vị trí khác nhau.  Kiến trúc này cung cấp khái niệm cơ sở và dễ hiểu về cơ sở dữ liệu phân tán. Ba đối tượng quan trọng thúc đẩy phát triển cấu trúc này là tính riêng rẽ của việc phân mảnhdữ liệu, cấp phát đoạn, điều khiển dư thừa và độc lập dữ liệu đối với hệ quản trị cơ sở dữ liệu địa phương. 36 Các chức năng cơ bản của DDBMS  Truy xuất dữ liệu  Hỗ trợ một số mức trong suốt phân tán  Hỗ trợ quản trị CSDL phân tán  Hỗ trợ cho điểu khiển tương tranh 37 Truy xuất dữ liệu  Cách thức truy cập cơ sở dữ liệu từ xa qua chương trình ứng dụng theo hai cách cơ bản:  Truy cập từ xa trực tiếp  Truy cập từ xa gián tiếp. 38 Mô hình truy cập trực tiếp Truy cập cơ sở dữ liệu Phương thức truy cập dữ liệu Hệ quản trị cơ sở dữ liệu 1 Kết quả Cơ sở dữ liệu 2 Chương trình ứng dụng Hệ quản trị cơ sở dữ liệu 2 Chương trình ứng dụng đưa ra yêu cầu truy cập đến CSDL từ xa, yêu cầu này được hệ quản trị CSDL tự động tìm nơi đặt dữ liệu và thực hiện yêu cầu tại điểm đó. Kết quả được trả lại cho chương trình ứng dụng. Đơn vị chuyển đổi giữa hai hệ quản trị CSDL là phương thức truy cập cơ sở dữ liệu và kết quả nhận được (thông qua việc thực hiện phương thức truy cập này). Với cách thức truy cập từ xa như vậy cấp độ trong suốt phân tán được xây dựng bằng cách tạo ra tên file toàn bộ để đánh địa chỉ thích hợp cho những điểm lưu trữ dữ liệu ở xa. 39 Mô hình truy cập gián tiếp Hệ quản trị cơ sở dữ liệu 2 Kết quả toàn bộ Chương trình ứng dụng Chương trình phụ Hệ quản trị cơ sở dữ liệu 1 Hệ quản trị cơ sở dữ liệu 2 Theo mô hình truy cập này, chương trình ứng dụng thực hiện yêu cầu qua chương trình phụ ở điểm khác. Chương trình phụ này được người lập trình ứng dụng viết để truy cập từ xa đến cơ sở dữ liệu và trả về kết quả của chương trình ứng dụng yêu cầu. 40 Ứng dụng  Sản xuất – đặc biệt là sản xuất với nhiều nhà máy  Kiểm soát và chỉ huy trong quân đội  EFT (chuyển ngân điện tử)  Hệ MIS hợp tác  Hàng không  Chuỗi khách sạn  Các tổ chức có cấu trúc phi tập trung 41 Hứa hẹn hệ QTCSDLPT  Quản lý trong suốt ( NSD không nhận biết) các dữ liệu được nhân bản và phân mảnh và phân tán  Cải thiện độ tin cậy/sẵn sàng qua các giao dịch phân tán  Cải thiện công năng  Dễ dàng và kinh tế khi cần mở rộng hệ thống 42 Trong suốt Transparency  Trong suốt là sự phân tách ngữ nghĩa cấp cao của hệ thống ra khỏi các vấn đề hiện thực cấp thấp.  Vấn đề cơ bản là cung cấp sự độc lập dữ liệu trong môi trường phân tán  Trong suốt mạng (phân tán)  Trong suốt về nhân bản  Trong suốt về phân mảnh  Phân mảnh ngang: phép chọn  Phân mảnh dọc: phép chiếu  Phân mảnh hỗn hợp 43 Ví dụ TITLE SAL PAY Lương Elect. Eng. 40000 Syst. Anal. 34000 Mech. Eng. 27000 Programmer 24000 PROJ Đề án PNO PNAME BUDGET ENO ENAME TITLE E1 J. Doe Elect. Eng. E2 M. Smith Syst. Anal. E3 A. Lee Mech. Eng. E4 J. Miller Programmer E5 B. Casey Syst. Anal. E6 L. Chu Elect. Eng. E7 R. Davis Mech. Eng. E8 J. Jones Syst. Anal. EMP Nhân viên ENO PNO RESP E1 P1 Manager 12 DUR E2 P1 Analyst 24 E2 P2 Analyst 6 E3 P3 Consultant 10 E3 P4 Engineer 48 E4 P2 Programmer 18 E5 P2 Manager 24 E6 P4 Manager 48 E7 P3 Engineer 36 E8 P3 Manager 40 ASG Phân công P1 Instrumentation 150000 P3 CAD/CAM 250000 P2 Database Develop. 135000 P4 Maintenance 310000 E7 P5 Engineer 23 44 Truy cập trong suốt Transparent Access SELECT ENAME,SAL FROM EMP,ASG,PAY WHEREDUR > 12 AND EMP.ENO = ASG.ENO AND PAY.TITLE = EMP.TITLE Paris projects Paris employees Paris assignments Boston employees Montreal projects Paris projects New York projects with budget > 200000 Montreal employees Montreal assignments Boston Communication Network Montreal Paris New York Boston projects Boston employees Boston assignments Boston projects New York employees New York projects New York assignments Tokyo EMP nhân viên ASG phân công PAY lương 45 CSDLPT Quan điểm của người sử dụng Distributed Database 46 Hệ QTCSDLPT- Thực tại Communication Subsystem User Query DBMS Software DBMS Software User Application DBMS Software User ApplicationUser Query DBMS Software User Query DBMS Software 47 Triển vọng cải thiện công năng  Tương đồng về dữ liệu ở góc độ sử dụng  Yêu cầu hỗ trợ phân mảnh và sao lưu  Thực thi song song  Song song truy vấn ngoài (Inter-query parallelism)  Song song truy vấn trong (Intra-query parallelism) 48 Nhu cầu song song  Có càng nhiều dữ liệu càng tốt cần cho mỗi ứng dụng ở vị trí thực thi ứng dụng  Nhân bản toàn phân  Cách cập nhật?  Cập nhật dữ liệu được nhân bản yêu cầu hiện thực kiểm soát đồng hành phân tán các giao tác cam kết (commit protocols) 49 Mở rộng hệ thống  Vấn đề quy mô CSDL  Sự tiến bộ vượt bậc của công nghệ vi xử lý và trạm máy tính  Chi phí truyền thông dữ liệu so với chi phí viễn thông 50 Các vấn đề của hệ QTCSDLPT  Thiết kế CSDLPT  Cách phân tán CSDL  Phân tán CSDL sao lưu và không sao lưu  Vấn đề liên quan trong quản trị thư mục  Xử lý truy vấn  Đổi các giao tác của NSD thành các lệnh xử lý dữ liệu  Bài toán tối ưu  min{chi phí = truyền dữ liệu+ xử lý cục bộ}  Bài toán NP-khó 51 Các vấn đề của Hệ QTCSDLPT  Kiểm soát đồng hành  Đồng bộ các truy cập đồng hành  Nhất quán và cách ly hiệu quả của giao tác  Quản lý deadlock  Sự tin cậy  Cách làm hệ thống có khả năng phục hồi với sai hỏng 52 Quản lý thư mục Vấn đề giữa các mối quan hệ Tin cậy Quản lý deadlock Xử lý truy vấn Kiểm soát đồng hành Thiết kế phân tán 53 Các vấn đề liên quan  Hỗ trợ hệ điều hành  Hệ điều hành với hỗ trợ đúng cho các thao tác CSDL  Phân chia giữa yêu cầu xử lý với mục tiêu chung và yêu cầu xử lý CSDL  Các hệ thống mở và Interoperability  Các hệ đa CSDL phân tán  Các kịch bản khả dĩ hơn  Các vấn đề song song 54 Tính đồng nhất và không đồng nhất  Đồng nhất và không đồng nhất  Phần cứng  Hệ điều hành  Các DBMS cục bộ  DBMS đồng nhất  Các DBMS cục bộ giống nhau  DBMS không đồng nhất  Có ít nhất hai DBMS cục bộ khác nhau  Chuyển đổi các mô hình dư liệu khác nhau 55 Tài liệu tham khảo 1. Ravindra Guravannavar, Ramanujam H.S.; Optimizing Nested Queries with Parameter Sort Orders; 2006. 2. Fabio Porto; Distributed Query Processing; 2005. 3. Farnoush Banaei-Kashani; Distributed Databases; 2005. 4. M. Tamer Ozsu, Patrick Valduriez; Principles of Distributed Database Systems; 1999.

Các file đính kèm theo tài liệu này:

  • pdfbai_giang_co_so_du_lieu_bai_2_tong_quan_ve_co_so_du_lieu_pha.pdf