Đăng ký Đăng nhập
Trang chủ Xử lý dữ liệu và bài toán cấp phát...

Tài liệu Xử lý dữ liệu và bài toán cấp phát

.PDF
79
3
98

Mô tả:

I .. ĐẠI HỌC THÁI NGUYÊN TRƢỜNG ĐẠI HỌC CNTT VÀ TRUYỀN THÔNG LẠI DƢƠNG QUANG XƢ LÝ DỮ LIỆU VÀ BÀI TOÁN CẤP PHÁT LUẬN VĂN THẠC SĨ: KHOA HỌC MÁY TÍNH Thái Nguyên, tháng 6 năm 2015 Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/ II ĐẠI HỌC THÁI NGUYÊN TRƢỜNG ĐẠI HỌC CNTT VÀ TRUYỀN THÔNG LẠI DƢƠNG QUANG XƢ LÝ DỮ LIỆU VÀ BÀI TOÁN CẤP PHÁT Chuyên ngành: Khoa học máy tính Mã số: 60 48 01 01 LUẬN VĂN THẠC SĨ: KHOA HỌC MÁY TÍNH GV hƣớng dẫn: PGS. NCVC. TS Lê Huy Thập Thái Nguyên, 2015 Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/ III LỜI CAM ĐOAN Tôi cam đoan đây là công trình nghiên cứu do chính tôi thực hiện. Các số liệu, kết quả nêu trong luận văn là trung thực và chƣa từng đƣợc ai công bố trong bất kỳ công trình nào khác. Thái Nguyên, Ngày 10 tháng 4 năm 2015 Tác giả Lại Dƣơng Quang Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/ IV LỜI CẢM ƠN Trƣớc hết em xin trân trọng gửi lời cảm ơn đến toàn thể các thầy cô giáo Trƣờng Đại học Công nghệ thông tin và Truyền thông Thái Nguyên đã dạy dỗ chúng em trong suốt quá trình học tập chƣơng trình cao học tại trƣờng. Đặc biệt em xin bày tỏ lòng biết ơn sâu sắc tới thầy giáo PGS. NCVC. TS Lê Huy Thập đã quan tâm, định hƣớng và đƣa ra những lời góp ý, chỉnh sửa quí báu cho em trong quá trình làm luận văn tốt nghiệp Thái Nguyên, Ngày 10 tháng 4 năm 2015 Học viên Lại Dƣơng Quang Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/ V MỞ ĐẦU Ngày nay, công nghệ thông tin (CNTT) đã trở thành một nhân tố không thể thiếu trong mọi lĩnh vực của đời sống xã hội. Sự bùng nổ nhu cầu xây dựng các hệ thống thông tin, mà trƣớc hết là các hệ thống thông tin quản lý đã thu hút sự quan tâm của nhiều nhà khoa học. Các hệ thống cơ sở dữ liệu (CSDL) đã lần lƣợt xuất hiện. Các hệ thống CSDL truyền thống đƣợc tập trung quản lý tại một trạm đơn lẻ, việc tính toán, xử lý và lƣu trữ các tập dữ liệu trở lên đơn giản và dễ dàng. Khi nhu cầu thu thập, lƣu trữ, xử lý và trao đổi thông tin ngày càng tăng, các hệ thống xử lý tập trung đã bộc lộ nhiều nhƣợc điểm nhƣ: Khó khăn trong việc tăng khả năng lƣu trữ thông tin, độ sẵn sàng phục vụ của CSDL không cao khi số ngƣời sử dụng tăng, khả năng tính toán của các máy tính đơn lẻ đang dần tới giới hạn vật lý, mô hình tổ chức lƣu trữ và xử lý dữ liệu không phù hợp cho các tổ chức có hoạt động rộng lớn, đa quốc gia. Những nhƣợc điểm này đã đƣợc khắc phục khá nhiều trong hệ thống phân tán. Những sản phẩm của hệ thống phân tán đã xuất hiện nhiều trên thị trƣờng và từng bƣớc chứng minh tính ƣu việt của nó hơn hẳn các hệ thống tập trung truyền thống. Với nhu cầu phát triển mạnh mẽ của công tác quản lý các hệ phân tán và cơ sở dữ liệu phân tán để giải quyết các bài toán ”quản lý” phức tạp đang tồn tại trong các ngành kinh tế, xã hội và an ninh quốc phòng,.... Nhằm hỗ trợ cho vấn đề nêu trên thì việc tính toán, lập trình cấp phát và xử lý dữ liệu cũng phát triển theo. Đặc biệt, việc phân mảnh các quan hệ trong CSDL và chuyển chúng đến các nút trên mạng cũng nhƣ việc cập nhật thông tin (truy cập và truy xuất,...) đến các mảnh ở các vị trí phân tán đã trở thành một chủ đề mới mẻ và đƣợc nhiều ngành khoa học, các bộ môn chuyên ngành nghiên cứu, ứng dụng. Chính vì vậy, tôi đã lựa chọn đề tài: “Xử lý dữ liệu và bài toán cấp phát” để nghiên cứu thực hiện. Luận văn đƣợc trình bày trong 3 chƣơng, có phần mở đầu, phần kết luận, phần mục lục, phần tài liệu tham khảo. Các nội dung cơ bản của luận văn đƣợc trình bày theo cấu trúc nhƣ sau: Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/ VI CHƢƠNG 1: TỔNG QUAN VỀ CƠ SỞ DỮ LIỆU PHÂN TÁN VÀ BÀI TOÁN CẤP PHÁT. 1.1. Tổng quan về CSDL phân tán. 1.2. Bài toán cấp phát. 1.3. Kết luận chƣơng. CHƢƠNG 2: XỬ LÝ DỮ LIỆU VÀ BÀI TOÁN CẤP PHÁT. 2.1. Thuật toán phân mảnh cơ sở dữ liệu. 2.1.1. Phân mảnh ngang. 2.1.2. Phân mảnh dọc. 2.1.3. Phân mảnh hỗn hợp. 2.2. Tính toán hàm mục tiêu và ràng buộc tại node mạng. 2.2.1. Hàm mục tiêu. 2.2.2. Ràng buộc. 2.3. Bài toán cấp phát dạng QHTT. 2.4. Kết luận chƣơng. CHƢƠNG 3: CÀI ĐẶT VÀ ỨNG DỤNG TẠI CÔNG TY ĐẦU TƢ VÀ THƢƠNG MẠI AN LỘC. 3.1. Khảo sát cơ sở dữ liệu của công ty đầu tƣ và thƣơng mại An Lộc và đƣa ra yêu cầu của bài toán. 3.2. Xây dựng cơ sở dữ liệu phân tán. 3.3. Cài đặt và chạy chƣơng trình cấp phát. 3.4. Kết luận chƣơng. KẾT LUẬN VÀ HƢỚNG PHÁT TRIỂN CỦA ĐỀ TÀI. Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/ VII DANH MỤC HÌNH ẢNH Hình 1.1: Hệ đa bộ xử lý có bộ nhớ chung ............................................................ 3 Hình 1.2: Hệ đa bộ xử lý có shared disk ................................................................ 3 Hình 1.3: Hệ đa bộ xử lý sở hữu cá nhân .............................................................. 3 Hình 1.4: CSDL đƣợc phân tán trên mạng ............................................................ 4 Hình 1.5: Phân mảnh hỗn hợp và tái thiết phân mảnh hỗn hợp ........................... 11 Hình 2.1: Phân mảnh hỗn hợp .............................................................................. 37 Hình 2.2: Truyền dữ liệu cho câu vấn tin ............................................................. 40 Hình 3.1: Giao diện ban đầu của bài toán ............................................................ 55 Hình 3.2: Giao diện sau khi tiến hành chọn số lƣợng máy trạm ......................... 56 Hình 3.3: Giao diện của quá trình chọn số lƣợng mảnh cơ sở dữ liệu ................. 57 Hình 3.4: Giao diện của quá trình chọn các mảnh cơ sở dữ liệu ......................... 58 Hình 3.5: Giao diện sau quá trình lựa chọn các mảnh cơ sở dữ liệu ................... 59 Hình 3.6: Giao diện lựa chọn các tham số từ file .txt có sẵn ............................... 60 Hình 3.7: Giao diện sau quá trình nhập các tham số ........................................... 61 Hình 3.8: Bảng kết quả của quá trình cấp phát .................................................... 62 Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/ VIII DANH MỤC BẢNG BIỂU Bảng 2.1: Quan hệ DuAn .......................................................................................... 25 Bảng 2.2: Quan hệ TraLuong ................................................................................... 26 Bảng 2.3: Mảnh dữ liệu (quan hệ) TraLuong1 .......................................................... 26 Bảng 2.4: Mảnh dữ liệu (quan hệ) TraLuong2 .......................................................... 27 Bảng 2.5: Phân hoạch ngang cho quan hệ DuAn: DuAnH1, DuAnH3, DuAnH4, DuAnH6 .......................................................................................................................... 29 Bảng 3.1: Một số bản ghi của quan hệ Giao_Dich tiến hành phân mảnh ngang...... 51 Bảng 3.2: Bảng dữ liệu (quan hệ) của mảnh F1 ....................................................... 52 Bảng 3.3: Bảng dữ liệu (quan hệ) của mảnh F2 ...................................................... 53 Bảng 3.4: Bảng dữ liệu (quan hệ) của mảnh F3 ....................................................... 53 Bảng 3.5: Bảng dữ liệu (quan hệ) của mảnh F4 ....................................................... 53 Bảng 3.6: Bảng dữ liệu (quan hệ) của mảnh F5 ....................................................... 53 Bảng 3.7: Bảng dữ liệu (quan hệ) của mảnh F6 ....................................................... 53 Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/ IX DANH MỤC CÁC THUẬT NGỮ VIẾT TẮT Thuật ngữ Tên viết tắt Cơ sở dữ liệu phân tán Cơ sở dữ liệu Dữ liệu CSDLPT CSDL DL Quy hoạch tuyến tính QHTT Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/ X MỤC LỤC LỜI CAM ĐOAN ............................................................................................................I LỜI CẢM ƠN ................................................................................................................. II MỞ ĐẦU ........................................................................................................................ III DANH MỤC HÌNH ẢNH ............................................................................................. V DANH MỤC BẢNG BIỂU ........................................................................................... VI DANH MỤC CÁC THUẬT NGỮ VIẾT TẮT .............................................................VII MỤC LỤC ................................................................................................................... VIII CHƢƠNG 1: TỔNG QUAN VỀ CƠ SỞ DỮ LIỆU VÀ BÀI TOÁN CẤP PHÁT ....... 1 1.1. Tổng quan về CSDL phân tán ................................................................1 1.1.1. Xử lý phân tán ..................................................................................1 1.1.2. Hệ cơ sở dữ liệu phân tán và hệ quản trị cơ sở dữ liệu phân tán .....4 1.1.3. Một số yêu cầu của hệ cơ sở dữ liệu phân tán .................................5 1.1.4. Các đặc điểm của hệ CSDL phân tán.............................................13 1.1.5. Kiến trúc hệ quản trị cơ sở dữ liệu phân ........................................14 1.2. Bài toán cấp phát...................................................................................16 1.2.1. Giới thiệu về bài toán cấp phát ......................................................16 1.2.2. Mô tả bài toán cấp phát ..................................................................20 1.2.3. Hàm mục tiêu (hàm chi phí) ..........................................................20 1.2.4. Các ràng buộc.................................................................................21 1.3. Kết luận chƣơng ....................................................................................22 CHƢƠNG 2: XỬ LÝ DỮ LIỆU VÀ BÀI TOÁN CẤP PHÁT ................................... 22 2.1. Thuật toán phân mảnh cơ sở dữ liệu .....................................................22 2.1.1. Thuật toán phân mảnh ngang nguyên thủy ....................................22 Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/ XI 2.1.2. Phân mảnh dọc ...............................................................................30 2.1.3. Phân mảnh hỗn hợp ........................................................................38 2.2. Tính toán hàm mục tiêu và ràng buộc tại node mạng ...........................39 2.2.1. Hàm mục tiêu .................................................................................39 2.2.2. Ràng buộc ......................................................................................44 2.3. Bài toán cấp phát dạng QHTT ..............................................................45 2.4. Kết luận chƣơng ....................................................................................49 CHƢƠNG 3: CÀI ĐẶT VÀ ỨNG DỤNG TẠI CÔNG TY ĐẦU TƢ VÀ THƢƠNG MẠI AN LỘC 3.1. 50 Khảo sát cơ sở dữ liệu của công ty đầu tƣ và thƣơng mại An Lộc và đƣa ra yêu cầu của bài toán ...................................................................................50 3.1.1. Mô tả hệ thống ...............................................................................50 3.1.2. Yêu cầu của bài toán ......................................................................51 3.2. Xây dựng cơ sở dữ liệu phân tán ..........................................................52 3.3. Cài đặt và chạy chƣơng trình cấp phát..................................................58 3.4. Kết luận chƣơng ....................................................................................66 KẾT LUẬN VÀ HƢỚNG PHÁT TRIỂN ...................................................................... 67 TÀI LIỆU THAM KHẢO ............................................................................................... 68 Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/ 1 CHƢƠNG 1: TỔNG QUAN VỀ CƠ SỞ DỮ LIỆU VÀ BÀI TOÁN CẤP PHÁT 1.1. Tổng quan về CSDL phân tán Nguyên lý cơ bản của các hệ cơ sở dữ liệu phân tán (CSDLPT) đƣợc xây dựng dựa trên sự hợp nhất của hai hƣớng tiếp cận lý thuyết các hệ cơ sở dữ liệu (CSDL) và công nghệ mạng máy tính. Động lực thúc đẩy sự phát triển mạnh mẽ của CSDLPT, nhu cầu tích hợp đa dạng các loại dữ liệu (DL) nhằm cung cấp nhiều loại hình dịch vụ cho ngƣời sử dụng. Thêm vào đó, với mục tiêu chia sẻ tài nguyên, khai thác, nâng cao khả năng tích hợp và trao đổi tài nguyên mạng cũng thúc đẩy quá trình sử dụng các hệ thống phân tán. Nhu cầu thu thập, lƣu trữ, xử lý và trao đổi thông tin ngày càng tăng, các hệ thống xử lý tập trung đã bộc lộ những nhƣợc điểm sau: [14][13] - Tăng khả năng lƣu trữ thông tin là khó khăn, bởi bị giới hạn tối đa của thiết bị nhớ. - Độ sẵn sàng phục vụ của CSDL không cao khi số ngƣời sử dụng tăng. - Khả năng tính toán của các máy tính đơn lẻ đang dần tới giới hạn vật lý. - Mô hình tổ chức lƣu trữ, xử lý dữ liệu tập trung không phù hợp cho những tổ chức kinh tế, xã hội có hoạt động rộng lớn, đa quốc gia. 1.1.1. Xử lý phân tán Hệ xử lý phân tán hay còn gọi là hệ thống tính toán phân tán đó là một hệ thống bao gồm một số đơn vị xử lý tự vận hành đƣợc liên kết thành mạng và hợp đồng thực hiện các nhiệm vụ mà chúng đƣợc phân công. Các đơn vị xử lý có thể thực hiện đƣợc các chƣơng trình tiền định trên đó. Những đối tƣợng đƣợc phân tán: - Các thiết bị xử lý, các chức năng xử lý: Các chức năng của hệ thống có thể đƣợc chuyển giao cho các thành phần hệ thống. Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/ 2 - Dữ liệu: Dữ liệu đƣợc dùng bởi một số ứng dụng có thể đƣợc phân tán tới một số vị trí xử lý. - Quyền điều khiển: Quyền điều khiển một số nhiệm vụ cũng đƣợc phân tán. Phân loại các hệ thống phân tán: Chúng ta có thể phân loại các hệ thống phân tán theo các tiêu chí sau đây - Mức độ kết nối; - Sự liên đới giữa các thành phần; - Cấu trúc tƣơng giao; - Sự đồng bộ giữa các thành phần. Tại sao phải phân tán: - Nhằm thích ứng tốt hơn với việc phân bố rộng rãi của các công ty, xí nghiệp. - Nhiều ứng dụng công nghệ hiện đại cần đƣợc phân tán. Lý do của việc xử lý phân tán: Để thực hiện tốt hơn các bài toán lớn và phức tạp mà chúng gặp phải hiện nay bằng cách sử dụng quy tắc ”Chia để trị”. Các ƣu điểm cơ bản của xử lý phân tán: - Tận dụng đƣợc sức mạnh tính toán xử lý song song bằng cách sử dụng nhiều bộ xử lý đồng thời. - Giải quyết bài toán theo từng nhóm hoạt động độc lập nên có thể kiểm soát đƣợc chi phí phát triển phần mềm. - Các hệ cơ sở dữ liệu phấn tán cũng có thể đƣợc xem xét để phân tán nhằm mục đích xử lý hiệu quả hơn. Một số hệ thống xử lý hay đƣợc dùng: Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/ 3 - Hệ thống đa bộ xử lý có bộ nhớ chung (hình 1.1) Hình 1.1: Hệ đa bộ xử lý có bộ nhớ chung - Hệ đa bộ xử lý chia sẻ đĩa (shared disk) (hình 1.2 ) Hình 1.2: Hệ đa bộ xử lý có shared disk - Hệ đa bộ xử lý sở hữu cá nhân (hình1.3) Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/ 4 Hình 1.3: Hệ đa bộ xử lý sở hữu cá nhân Ghi chú: Phân bố vật lý không nhất thiết là phải cách xa nhau về mặt địa lý; chúng có thể ở trong cùng máy, một văn phòng,... Duy có điều là việc giao tiếp giữa chúng đƣợc thực hiện trên mạng và mạng máy tính đƣợc xem là tài nguyên dùng chung duy nhất. 1.1.2. Hệ cơ sở dữ liệu phân tán và hệ quản trị cơ sở dữ liệu phân tán Hệ CSDL phân tán (Distributed Database System – DDBS) là một tập hợp dữ liệu có liên đới logic và đƣợc phân bố trên các nút của một mạng máy tính. Hệ quản trị CSDL phân tán (Distributed Database Management System – DDBMS) là một hệ thống phần mềm cho phép quản lý các hệ CSDLPT và làm cho việc phân tán trở nên vô hình đối với ngƣời sử dụng. Nhƣ vậy hệ CSDLPT là một tập các tệp dữ liệu vừa có liên đới logic, vừa phải có cùng cấu trúc và vừa phải đƣợc truy xuất qua một giao diện chung. Và phân bố vật lý của các dữ liệu không phải là vấn đề quyết định. Nhận xét: Nếu CSDL nằm tại một nút mạng thì nó không phải là hệ CSDL phân tán, vì vấn đề quản trị CSDL không khác với quản trị CSDL trong môi trƣờng tập trung kiểu client/server của mạng. Nếu một cơ sở dữ liệu đƣợc phân tán trên nhiều nút mạng, khi đó CSDL sẽ là cơ sở dữ liệu phân tán (hình 1.4). Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/ 5 Hình 1.4: CSDL được phân tán trên mạng 1.1.3. Một số yêu cầu của hệ cơ sở dữ liệu phân tán a. Yêu cầu phân mảnh, nhân bản và vô hình Từ lý do xã hội và kinh tế xã hội phi tập trung, nên để có hiệu quả kinh tế ngƣời ta phân mảnh, nhân bản, phân tán và xử lý chúng tại các vị trí khác nhau. Ví dụ 1.1: Một công ty máy tính, có các văn phòng ở Hà Nội , Hải Phòng, Nha Trang và TP. Hồ Chí Minh, có một số dự án đƣợc thực hiện tại các địa điểm đó, và muốn dùng CSDL để quản lý nhân công, quản lý dự án và các dữ liệu liên quan khác. Giả sử CSDL là CSDL quan hệ , đƣợc cho bởi các quan hệ sau: - Quan hệ nhân viên: NhanVien(MaNV, TenNV, TrinhDoCM) Trong đó NhanVien là tên quan hệ nhân viên, MaNV là mã nhân viên - khóa chính, TenNV là tên nhân viên, TrinhDoCM là trình độ chuyên môn. - Quan hệ dự án: DuAn(MaDuAn, TenDuAn, NganSach) Trong đó MaDuAn là mã số dự án - khóa chính, TenDuAn - tên dự án và NganSach - ngân sách dự án. - Quan hệ trả lƣơng: TraLuong(TrinhDoCM, Luong) Trong đó TrinhDoCM là trình đọ chuyên môn - khóa chính, Luong - Tiền lƣơng. - Quan hệ phân nhiệm: PhanNhiem(MaNV, MaDuAn, ThoiGianLV, ChucVu) Trong đó PhanNhiem là quan hệ phân công nhiệm vụ, MaNV - khóa ngoại, MaDuAn - khóa ngoại, (MaNV, MaDuAn) - khóa chính, ThoiGianLV là thời gian làm việc, ChucVu là chức vụ. Yêu cầu phân mảnh CSDL Giả sử công ty đƣợc phân tán các vị trí khác nhau nhƣ Hà Nội, Hải Phòng, Nha Trang và TP. Hồ Chí Minh, nên công ty muốn để dữ liệu về các nhân viên các dự án của vị trí nào đƣợc lƣu ở vị trí đó, do đó cần phải phân hoạch các quan hệ NhanVien Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/ 6 và DuAn và lƣu chúng taị các vị trí nhƣ đã yêu cầu. Quá trình làm này đƣợc gọi là phân mảnh. Yêu cầu nhân bản Do yêu cầu về hiệu quả và độ tin cậy cho CSDL nên một phần dữ liệu đã đƣợc phân mảnh ở trên cần phải đƣợc lƣu bản sao tại một số vị trí khác. Quá trình này đƣợc gọi là nhân bản. Do tính chất phân tán của công việc kinh doanh của công ty, ngƣời ta muốn đặt dữ liệu về các nhân viên của văn phòng ở Hải Phòng đƣợc lƣu ở Hải Phòng, nhân viên của văn phòng ở Hà Nội đƣợc lƣu ở Hà Nội v.v… Nhƣ vậy cần có một qúa trình phân hoạch các quan hệ này và lƣu các phân hoạch đó tại các vị trí khác nhau. Yêu cầu vấn tin vô hình Ngƣời sử dụng đặt câu hỏi vấn tin nhƣ với CSDL tập trung tại một điểm nút nào đó mà họ muốn. Vô hình về độc lập dữ liệu là sự vô hình các chi tiết về cấu trúc lƣu trữ dữ liệu nó là dạng vô hình cơ bản của hệ quản trị CSDL phân tán và CSDL tập trung. Do định nghĩa CSDL nên thƣờng có hai mức độc lập là: mô tả cấu trúc logic của dữ liệu và định nghĩa về cấu trúc vật lý. Vì vậy, chúng ta có thể nói đến hai loại độc lập dữ liệu: mức logic thƣờng đƣợc xem là định nghĩa lƣợc đồ, còn mức vật lý đƣợc gọi là mô tả dữ liệu vật lý. - Độc lập dữ liệu về cấu trúc logic: Đó là tính độc lập của các ứng dụng với những thay đổi trong cấu trúc logic của CSDL; tức là nếu có một chƣơng trình ứng dụng nào đó truy xuất vào một tập con thuộc tính nào đó của CSDL thì nó sẽ không bị ảnh hƣởng nếu ta thêm hoặc bớt một số thuộc tính khác (không thuộc tập con thuộc tính trên) vào hoặc từ CSDL đã cho. - Độc lập dữ liệu về cấu trúc vật lý: là vô hình các chi tiết về cấu trúc lƣu trữ dữ liệu. Ngƣời viết ứng dụng không cần quan tâm đến dữ liệu để ở Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/ 7 đâu (ổ đĩa, hay băng từ, nút mạng,… ) và cách truy xuất dữ liệu (ví dụ tuần tự hay ngẫu nhiên). Vô hình liên kết mạng Ngƣời sử dụng đƣợc tách ra khỏi mọi chi tiết hoạt động của mạng, không biết có sự hiển diện của mạng - nghĩa là ngƣời sử dụng không biết là mình đang làm việc với CSDL tập trung hay phân tán. Vô hình liên kết mạng có thể đƣợc chia thành hai loại: - Vô hình vị trí: Vô hình vị trí là việc thực hiện một lệnh nào đó độc lập với vị trí dữ liệu đƣợc lƣu trữ. - Vô hình đặt tên: Vô hình đặt tên là ngƣời sử dụng dùng một tên duy nhất đƣợc hệ thống đặt trƣớc cho mỗi đối tƣợng CSDL mà không cần biết ai đặt tên đó và tên đó nằm ở đâu,... Nếu không có vô hình đặt tên ngƣời sử dụng bị buộc phải gắn tên vị trí làm thành phần tên của tên đối tƣợng. Chẳng hạn, HaiPhong, NhanVien, TenNV,… Vô hình nhân bản Vô hình nhân bản làm cho ngƣời sử dụng không thể biết họ đang làm việc với các quan hệ (hoặc các mảnh) gốc hay với các bản sao. Việc nhân bản sẽ làm tăng hiệu quả vì có thể làm giảm xung đột đƣờng truyền khi truy cập vào cơ sở dữ liệu, giảm thời gian truyền dữ liệu và tăng độ an toàn và bảo mật. Hơn nữa nếu một số máy lƣu dữ liệu có "hỏng hóc" thì các máy khác có thể truy cập đến các nhân bản khác,… Việc nhân bản gây ra nhiều khó khăn về cập nhật, vì khi một nhân bản có sự thay đổi (xóa, sửa, thêm,…) thì các nhân bản khác kể cả bản gốc liệu có cập nhật kịp thời hay không? Việc có nhân bản hay không, bao nhiêu bản, lƣu trữ của bản sao tại nút nào là tùy thuộc vào nhu cầu ứng dụng quyết định. Vô hình phân mảnh (Fragmentation transparency) Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/ 8 Vô hình phân mảnh làm cho ngƣời sử dụng không cần tham gia vào việc phân mảnh và không thể biết họ đang làm việc với CSDL gốc hay với các mảnh đã đƣợc phân mảnh từ CSDL gốc. Khi CSDL đƣợc phân mảnh, phải có cách xử lý các câu vấn tin của ngƣời sử dụng, các truy vấn này phải đƣợc thực hiện trên các mảnh. Tức là phải dịch câu truy vấn toàn cục thành nhiều câu truy vấn theo các mảnh. Nhƣ vậy vấn đề vô hình phân mảnh là kéo theo vấn đề vô hình xử lý các câu truy vấn. b. Kỹ thuật phân mảnh Thiết kế phân mảnh dữ liệu là công việc đầu tiên phải thực hiện. Mục đích của việc phân mảnh dữ liệu là tạo ra các đơn vị cấp phát logic, sao cho chi phí để thực hiện truy vấn thông tin là thấp nhất. Các bộ hoặc các thuộc tính của quan hệ không thể đƣợc xem nhƣ một đơn vị cấp phát, vì sẽ làm cho việc cấp phát trở lên phức tạp hơn. Thiết kế phân mảnh bằng cách nhóm một số bộ trong trƣờng hợp phân mảnh ngang hay nhóm các thuộc tính trong trƣờng hợp phân mảnh dọc có cùng đặc tính theo quan điểm cấp phát. Các mảnh hình thành bằng các phƣơng pháp phân mảnh tạo ra các đơn vị cấp phát dữ liệu khác nhau. Các quy tắc phân mảnh Các nguyên tắc để đảm bảo cơ sở dữ liệu khi phân mảnh sẽ đảm bảo tính không thay đổi về ngữ nghĩa. Dƣới đây là ba qui tắc phải tuân thủ khi phân mảnh cơ sở dữ liệu quan hệ. 1. Tính đầy đủ: Quan hệ R đƣợc phân rã thành các mảnh R1, R2…Rn, thì mỗi mục dữ liệu có trong quan hệ R sẽ đƣợc chứa trong ít nhất một mảnh R i (i=1,..,n). Quy tắc này đảm bảo cho các mục dữ liệu trong R đƣợc ánh xạ hoàn toàn vào các mảnh và không bị mất. Mục dữ liệu có thể hiểu là bộ trong phân mảnh ngang và thuộc tính trong phân mảnh dọc. 2. Tính phục hồi: Nếu một quan hệ R đƣợc phân rã thành các mảnh R1, R2,…,Rn. Khi đó nếu gọi FR là tập các mảnh thì: R = ∇ Ri, ∀ Ri∈ FR . Toán tử ∇ thay đổi tùy theo từng loại phân mảnh.. Khả năng phục hồi quan hệ từ các mảnh sẽ đảm bảo bảo toàn các phụ thuộc. Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/ 9 3. Tính tách biệt: Nếu quan hệ R đƣợc phân rã ngang thành các mảnh Ri, i=1,..n và mục dữ liệu di nằm trong một mảnh Ri thì nó sẽ không nằm trong mảnh Rk, (i≠k). Quy tắc này đảm bảo các mảnh phân rã rời nhau. Trong trƣờng hợp phân mảnh dọc, khóa chính của quan hệ phải có mặt trong tất cả các mảnh. Vì vậy tính tách biệt trong phân mảnh dọc đƣợc hiểu không liên quan gì đến khóa chính của quan hệ. Phân mảnh ngang Phân mảnh ngang chính là việc chia quan hệ thành nhiều các nhóm bộ. Kết quả của quá trình phân mảnh ngang là các quan hệ con, số lƣợng quan hệ con phụ thuộc vào điều kiện ràng buộc của các thuộc tính. Và các bộ trong các quan hệ con là tách biệt nhau. Phân mảnh ngang thực chất là phép chọn quan hệ thỏa mãn một biểu thức điều kiên cho trƣớc. Có hai loại phƣơng pháp phân mảnh ngang là: - Phân mảnh ngang nguyên thủy: Là phân mảnh ngang đƣợc thực hiện trên các mệnh đề của chính quan hệ đó. - Phân mảnh ngang dẫn xuất: Là phân rã một quan hệ dựa trên các mệnh đề của quan hệ khác. Phân mảnh ngang nguyên thủy: Phân mảnh ngang nguyên thuỷ là phân rã một quan h ệ thành các tập gồm các bộ dƣ̣a trên các mệnh đề đƣơ ̣c định nghĩa trên quan hệ đó . Phân mảnh ngang nguyên thuỷ đƣơ ̣c định nghĩa bằng một thuật toán chọn trên các quan hệ nguồn của một lƣơ ̣c đồ CSDL. Mảnh ngang R i bao gồm các bộ của R đƣơ ̣c chọn ra theo công thức: Ri   Fi ( R) với 1≤ i ≤z. Trong đó, Fi là công thức chọn đƣơ ̣c sƣ̉ dụng để có đƣơ ̣c mảnh R i. Chú ý rằng chúng ta xét Fi có dạng chuẩn hội, nó là một mệnh đề hội sơ cấp (mi). Tái thiết phân mảnh ngang nguyên thủy là toán tử hợp  . Chẳng hạn: z R   Ri i 1 Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/
- Xem thêm -

Tài liệu liên quan

Tài liệu xem nhiều nhất