Xử lý câu truy vấn SQL qua phán đoán và cưỡng chế

61 272 0
Xử lý câu truy vấn SQL qua phán đoán và cưỡng chế

Đ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

ĐẠI HỌC THÁI NGUYÊN TRƢỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG VŨ ANH TÀI XỬ LÝ CÂU TRUY VẤN SQL QUA PHÁN ĐOÁN VÀ CƢỠNG CHẾ Chuyên ngành: KHOA HỌC MÁY TÍNH Mã số: 60 48 01 LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH Ngƣời hƣớng dẫn khoa học: PGS.TS LÊ HUY THẬP Thái Nguyên - 2013 Số hóa trung tâm học liệu http://lrc.tnu.edu.vn/ i LỜI CAM ĐOAN Tôi xin cam đoan, kết luận văn hoàn toàn kết tự thân tơi tìm hiểu, nghiên cứu Các tài liệu tham khảo đƣợc trích dẫn thích đầy đủ Tác giả VŨ ANH TÀI Số hóa trung tâm học liệu http://lrc.tnu.edu.vn/ ii LỜI CẢM ƠN Lời xin gửi lời cảm ơn chân thành đến thầy PGS.TS LÊ HUY THẬP định hƣớng nhiệt tình hƣớng dẫn, giúp đỡ nhiều mặt chuyên mơn q trình làm luận văn Tơi xin gửi lời biết ơn sâu sắc đến thầy, cô dạy dỗ truyền đạt kinh nghiệm quý báu cho suốt hai năm cao học trƣờng Đại học Công nghệ thông tin truyền thông, Đại học Thái Nguyên Cuối xin dành tình cảm thân thiết cho bạn bè, đồng nghiệp, cha mẹ gia đình, ngƣời ln gần gũi để động viên, chia sẻ suốt thời gian qua Thái Nguyên, tháng năm 2013 Vũ Anh Tài Số hóa trung tâm học liệu http://lrc.tnu.edu.vn/ iii MỤC LỤC LỜI CAM ĐOAN i LỜI CẢM ƠN ii DANH MỤC CÁC BẢNG .v DANH MỤC CÁC HÌNH vi MỞ ĐẦU 1 Đặt vấn đề Đối tƣợng phạm vi nghiên cứu .1 Hƣớng nghiên cứu đề tài .1 Phƣơng pháp nghiên cứu .2 Ý nghĩa khoa học đề tài Các kết dự kiến đạt đƣợc Chƣơng 1: CƠ SỞ LÝ THUYẾT 1.1 Giới thiệu logic 1.1.1 Các loại mệnh đề 1.1.2 Khái niệm vị từ 1.2 Tổng quan sở liệu phân tán 1.2.1 Các phƣơng pháp phân mảnh 1.2.1.1 Phƣơng pháp phân mảnh ngang 1.2.1.2 Phƣơng pháp phân mảnh dọc 15 1.2.1.3 Phƣơng pháp phân mảnh hỗn hợp .16 1.2.1 Kiểm sốt tồn vẹn ngữ nghĩa phân tán 16 1.2.3 Khái niệm cƣỡng chế phán đoán 17 1.3 Kết luận 20 Chƣơng 2: XỬ LÝ CÂU TRUY VẤN SQL 21 2.1 Kiểm sốt tồn vẹn ngữ nghĩa phân tán 21 2.1.1 Lớp phán đoán riêng .21 2.1.2 Phán đoán hƣớng tập hợp 22 2.2 Cƣỡng chế thi hành phán đốn tồn vẹn phân tán 24 Số hóa trung tâm học liệu http://lrc.tnu.edu.vn/ iv 2.2.1 Phán đoán riêng 24 2.2.2 Phán đoán hƣớng tập hợp 24 2.2.3 Phán đốn có hàm gộp 27 2.3 Các phƣơng pháp rút gọn dựa vào phán đoán cƣỡng chế 27 2.3.1 Rút gọn cho phân mảnh ngang nguyên thuỷ 27 2.3.1.1 Rút gọn với phép chọn 28 2.3.1.2 Rút gọn với phép nối 29 2.3.2 Rút gọn cho phân mảnh ngang dẫn xuất .31 2.3.3 Rút gọn cho phân mảnh dọc 35 2.3.4 Rút gọn cho phân mảnh hỗn hợp 37 2.4 Kết luận 41 Chƣơng 3: ỨNG DỤNG .43 3.1 Ứng dụng tạo CSDL quản lý sinh viên Trƣờng Cao đẳng Cơng nghệ Viettronics .43 3.2 Ứng dụng phán đốn cƣỡng chế thi hành câu SQL thông tin cần kết xuất CSDL 45 3.3 Kết luận chƣơng 52 KẾT LUẬN VÀ HƢỚNG PHÁT TRIỂN CỦA LUẬN VĂN .53 TÀI LIỆU THAM KHẢO 54 Số hóa trung tâm học liệu http://lrc.tnu.edu.vn/ v DANH MỤC CÁC BẢNG Bảng 1.1 Bảng chân trị phép toán mệnh đề Bảng 1.2 Mức ƣu tiên phép toán logic Bảng 1.3 Mảnh ngang DuAn H1 Bảng 1.4 Mảnh ngang DuAn H2 Bảng 1.5 Mảnh ngang DuAn H3 Bảng 1.6 TraLuong1 10 Bảng 1.7 TraLuong2 10 Bảng 1.8 Phân hoạch ngang cho quan hệ DuAn: DuAnH1, DuAnH3, DuAnH4, DuAnH6 12 Bảng 1.9 Khoa 13 Bảng 1.10 Sinhvien 13 Bảng 1.11 Monhoc 13 Bảng 1.12 Diem .14 Bảng 1.13: Sinhvien1 15 Bảng 1.14: Sinhvien2 15 Bảng 1.15: Monhoc1 16 Bảng 1.16: Monhoca 16 Bảng 2.1 Quan hệ EMP 38 Bảng 2.2 Mảnh hỗn hợp EMPHH1 38 Bảng 2.3 Mảnh hỗn hợp EMPHH2 38 Bảng 2.4 Mảnh hỗn hợp EMPHH3 39 Bảng 3.1 Khoa 48 Bảng 3.2 Sinhvien 48 Bảng 3.3 monnganh 48 Bảng 3.4 Lophoc 48 Bảng 3.5 Sinhvien1 49 Bảng 3.6 Sinhvien2 49 Bảng 3.7: Monnganh1 49 Số hóa trung tâm học liệu http://lrc.tnu.edu.vn/ vi DANH MỤC CÁC HÌNH Hình 1.1 Biểu diễn mối liên hệ quan hệ nhờ đƣờng nối Hình 1.2: Mối liên hệ quan hệ 14 Hình 2.1 Rút gọn cho phân mảnh ngang (với phép chọn) .29 Hình 2.2 (a) vấn tin gốc 31 Hình 2.2 (b) vấn tin rút gọn 31 Hình 2.3 Vấn tin gốc ví dụ 2.10 33 Hình 2.4 Vấn tin gốc đƣợc giao hoán 34 Hình 2.5 Vấn tin sau dùng vị từ mâu thuẫn .34 Hình 2.6 Cây vấn tin sau giao hoán phép hợp phép nối 35 Hình 2.7 Rút gọn cho phân mảnh dẫn xuất 35 Hình 2.8a Phép chiếu vơ dụng 36 Hình 2.8 b,c,d Rút gọn cho phân mảnh dọc .37 Hình 2.9 Cây vấn tin gốc 40 Hình 2.10 Cây vấn tin loại EMPHH1 40 Hình 2.11 Cây vấn tin đẩy phép chiếu xuống, phép nối lên .41 Hình 2.12 Câu vấn tin rút gọn .41 Hình 3.1 Sơ đồ kết nối quan hệ 45 Hình 3.2 Cây truy vấn tiền xử lý ví dụ 46 Hình 3.3 Các nối tƣơng đƣơng ví dụ .46 Hình 3.4 Các nối tƣơng đƣơng ví dụ .47 Hình 3.5 Các nối tƣơng đƣơng ví dụ .47 Số hóa trung tâm học liệu http://lrc.tnu.edu.vn/ MỞ ĐẦU Đặt vấn đề Ngày với phát triển khoa học kỹ thuật, bùng nổ thông tin cung cấp đa dạng loại hình thƣơng mại, quản lý dịch vụ đa phƣơng tiện cho ngƣời sử dụng Kết nối máy tính thành mạng với mục tiêu chia sẻ tài nguyên, khai thác có hiệu tài ngun thơng tin, nâng cao khả tích hợp trao đổi loại liệu thành phần mạng, nhu cầu thu thập, lƣu trữ, xử lý trao đổi thông tin ngày tăng Khi khối lƣợng thông tin phải xử lý ngày lớn, phong phú đa dạng vấn đề đặt xử lý thông tin nhƣ để tìm cách giảm thiểu thời gian chi phí tăng cao hiệu xử lý Một giải pháp có tính khả thi phải xử lý câu lệnh SQL truy vấn liệu dựa vào quy tắc phán đoán – cƣỡng chế phƣơng pháp rút gọn thứ tự gộp nhóm phân mảnh mà gọi giải pháp tiền xử lý Đó mục đích tơi chọn nghiên cứu “ Xử lý câu truy vấn SQL qua phán đoán cưỡng chế ” làm đề tài luận văn tốt nghiệp Đối tƣợng phạm vi nghiên cứu - Đối tƣợng nghiên cứu sở liệu phân tán, xử lý song song phân tán - Phạm vi nghiên cứu số phƣơng pháp xử lý câu truy vấn SQL sở liệu phân tán Hƣớng nghiên cứu đề tài - Nghiên cứu tối ƣu hóa truy vấn sở liệu phân tán, phƣơng pháp, kỹ thuật, thuật toán liên quan đến xử lý câu truy vấn SQL đặc biệt phƣơng pháp phán đoán, cƣỡng chế - Nghiên cứu mơ hình chi phí song song mơ hình chi phí song song tối ƣu hóa truy vấn Nghiên cứu mơ hình tối ƣu hóa hai pha Số hóa trung tâm học liệu http://lrc.tnu.edu.vn/ Phƣơng pháp nghiên cứu - Nghiên cứu kỹ kiến thức, chủ đề có liên quan đến đề tài - Nghiên cứu quy tắc phƣơng pháp phán đoán cƣỡng chế - Nắm vững kiến thức rút gọn câu vấn tin dựa vào phán đoán Ý nghĩa khoa học đề tài Luận văn giúp cho việc tiền xử lý câu lệnh SQL phƣơng pháp phán đoán cƣỡng chế rút gọn câu lệnh loại Các kết dự kiến đạt đƣợc - Giới thiệu tổng quan CSDL phân tán - Trình bày phƣơng pháp, thuật tốn xử lý, tối ƣu hóa truy vấn phân tán đặc biệt phƣơng pháp phán đoán cƣỡng chế - Cài đặt thử nghiệm thuật toán xử lý câu truy vấn phân tán Số hóa trung tâm học liệu http://lrc.tnu.edu.vn/ Chƣơng CƠ SỞ LÝ THUYẾT 1.1 Giới thiệu logic 1.1.1 Các loại mệnh đề Mệnh đề sơ cấp: (elementary proposition) Là mệnh đề phân nhỏ đƣợc – nói phát biểu đơn giản Ví dụ: “Một cộng 2” “ số nguyên tố” Các mệnh đề sơ cấp thƣờng đƣợc gắn với ký hiệu nhƣ chữ p, q, r, mà ta gọi biến mệnh đề logic Mệnh đề phức hợp: (compound proposition) Mệnh đề phức hợp mệnh đề đƣợc tạo từ mệnh đề cách dùng từ liên kết nhƣ “và” (AND), “hoặc” (OR), Ví dụ:  “Số số chẵn số nguyên tố” gồm mệnh đề: “Số số chẵn” từ nối “và” “ Số số nguyên tố”; Các phép toán mệnh đề Bao gồm: Phép phủ định( ), phép hội( ), phép tuyển( ), phép kéo theo( , ) Bảng chân trị phép toán mệnh đề Bảng 1.1 Bảng chân trị phép toán mệnh đề p q 0 1 0 1 1 0 1 1 0 1 0 1 0 1 1 p q p q p q p q p q p q Mức ƣu tiên phép toán logic Thứ tự ƣu tiên phép toán logic đƣợc liệt kê theo mức yếu dần từ xuống dƣới bảng sau: Số hóa trung tâm học liệu http://lrc.tnu.edu.vn/ 40 ENO,ENAME ENO = “E5” ENO EMPHH3 EMPHH1 EMPHH2 Hình 2.9 Cây vấn tin gốc Cây vấn tin gốc hình 2.9 đƣợc rút gọn cách đẩy phép chọn xuống để loại bỏ EMPHH1 Hình 2.10 Cây vấn tin loại EMPHH1 ENO,ENAME ENO ENO = “E5” EMPHH2 ENO = “E5” EMPHH3 Hình 2.10 Cây vấn tin loại EMPHH1 Đẩy phép chiếu xuống, phép nối lên đƣợc vấn tin hình 2.11 Trong hình 2.11 loại nhánh phải khơng có thuộc tính ENAME Số hóa trung tâm học liệu http://lrc.tnu.edu.vn/ 41 ENO ENO,ENAME ENO = “E5” EMPHH2 ENO,ENAME ENO = “E5” EMPHH3 Hình 2.11 vấn phép chiếu xuống, xuống, phép Hình 2.11 Cây vấn tinCây đẩytin Đẩy phép chiếu phép nối lênnối lên Kết cuối hình 2.12 ENO,ENAME ENO = “E5” EMPHH2 Hình 2.12 Câu vấn tin rút gọn Tái thiết câu lệnh đại số quan hệ từ 2.12 đƣợc: ENO,ENAME( ENO = “E5” EMPHH2) Tái thiết câu lệnh SQL từ câu lệnh đại số quan hệ đƣợc: SELECT ENAME FROM EMPHH2 WHERE ENO = “E5” 2.4 Kết luận Phân tán vấn tin giai đoạn q trình xử lý câu truy vấn SQL, biến đổi câu truy vấn tin dạng phép tính quan hệ thành câu vấn tin đại số quan hệ Số hóa trung tâm học liệu http://lrc.tnu.edu.vn/ 42 Việc phân rã quan hệ thành nhiều mảnh, mảnh đƣợc xử lý nhƣ đơn vị, cho phép thực nhiều giao dịch đồng thời cho phép thực song song câu vấn tin cách chia thành tập câu vấn hoạt tác mảnh Vì việc phân mảnh làm tăng mức độ hoạt động đồng thời nhƣ làm tăng lƣu lƣợng hoạt động hệ thống Tuy nhiên q trình phân mảnh xảy xung đột làm phức tạp hố q trình kiểm tra ngữ nghĩa Kiểm sốt tồn vẹn ngữ nghĩa phân tán, biến đổi phán đoán cấp cao thành phán đoán biên dịch lƣu phán đoán biên dịch tuỳ theo lớp: Lớp phán đoán riêng, phán đoán hƣớng tập hợp lớp phán đốn có hàm gộp Cƣỡng chế thi hành ràng buộc toàn vẹn loại bỏ chƣơng trình vi phạm trạng thái CSDL cập nhật sinh Hai vấn đề thiết kế tiểu hệ thống toàn vẹn phân tán định nghĩa phán đoán phân tán thuật toán cƣỡng chế nhằm hạ thấp tối đa chi phí kiểm tra tồn vẹn phân tán Số hóa trung tâm học liệu http://lrc.tnu.edu.vn/ 43 Chƣơng ỨNG DỤNG 3.1 Ứng dụng tạo CSDL quản lý sinh viên Trƣờng Cao đẳng Công nghệ Viettronics Một số giải pháp xử lý câu vấn tin phân tán áp dụng rộng rãi chƣơng trình phần mềm chạy sở liệu phân tán Hiện trƣờng Cao đẳng Công nghệ Viettronics sử dụng phần mềm quản lý sinh viên dạng Cơ sở liệu tập trung Nhƣng tƣơng lai với phát triển nhà trƣờng việc ứng dụng sở liệu phân tán điều khả thi nghiên cứu áp dụng giải pháp xử lý câu truy vấn SQL Trƣờng dạng (demo ) điều cần thiết Giới thiệu sở liệu Trƣờng Cao đẳng Công nghệ Viettronics Trƣờng Cao đẳng Công nghệ Viettronics thành lập ngày 29/5/2003 theo Quyết định số 2445 QĐ/BGD&ĐT – TCCB, trực thuộc quản lý điều hành Tổng Công ty CP Điện tử Tin học Việt Nam Trƣờng Cao đẳng Công nghệ Viettronics - trƣờng chuyên nghiệp công lập với sứ mạng trƣờng hàng đầu đào tạo thực hành nghiên cứu ứng dụng công nghệ kinh doanh với tƣ tƣởng “Học thật -Thi thật - Làm thật Đào tạo gắn liền với thực tiễn nhằm giải đầu cho sinh viên” mối quan tâm hàng đầu nhà trƣờng Đội ngũ giảng viên đƣợc Nhà trƣờng quan tâm, đầu tƣ nâng cao trình độ chun mơn, nghiệp vụ nhƣ trình độ lý luận trị, coi phận tách rời công tác triển khai thực nhiệm vụ giáo dục đào tạo Nhà trƣờng Quy mô đào tạo Nhà trƣờng ngày đƣợc mở rộng Trong năm học Nhà trƣờng Nhà trƣờng có 257 sinh viên với lớp, ngành đào tạo (Công nghệ Thông tin - Truyền thông, Quản trị kinh doanh, Công nghệ tự động, Công nghệ Điện tử - Viễn thơng số dần thay đổi qua năm học Đến với tổng số gần 3000 Sinh viên với 07 ngành: Công nghệ thông tin, Công nghệ kỹ thuật điện tử, truyền thông, Công nghệ kỹ thuật điều khiển tự Số hóa trung tâm học liệu http://lrc.tnu.edu.vn/ 44 động hóa, Quản trị kinh doanh, Kế tốn, Tài Chính – Ngân Hàng, Việt Nam học, đòi hỏi việc quản lý nói chung quản lý HSSV nói riêng phải đƣợc xử lý chuyên nghiệp hoá đồng hoá CSDL Cơ sở liệu Trƣờng Cao đẳng Viettronics: Quan hệ SINHVIEN: Hồ sơ sinh viên Masv: Mã số sinh viên hoten: Họ tên sinh viên ngaysinh: Ngày, tháng, năm sinh gioitinh: Giới tính dia chi: Địa sodienthoai: Số điện thoại Malop: Mã lớp Makhoa: Mã khoa Noisinh: Nơi sinh Quan hệ LOPHOC: Lớp Malop: Mã lớp Tenlop: Tên lớp Manganh: Mã ngành Makhoa: Mã khoa Khoahoc: Khoá học He: Hệ Loaihinh: Loại hình Quan hệ MONLOP: Mơn lớp Malop: Mã lớp Mamon: Mã môn Hocky: Học kỳ Namhoc: Năm học Quan hệ DIEM: Điểm sinh viên Masv: Mã sinh viên Số hóa trung tâm học liệu http://lrc.tnu.edu.vn/ 45 Mamon: Mã môn Diemlan1: Điểm lần Diemlan2: Điểm lần Diemxet: Điểm xét Quan hệ NGANH HOC: Ngành học Manganh: Mã ngành tennganh: Tên ngành Makhoa: Mã Khoa Quan hệ KHOA: Khoa chuyên môn Makhoa: Mã khoa tenkhoa: Tên khoa diachi: Địa khoa Sodienthoai: Số điện thoại Hình 3.1 Sơ đồ kết nối quan hệ 3.2 Ứng dụng phán đoán cƣỡng chế thi hành câu SQL thông tin cần kết xuất CSDL Ví dụ 3.1 Xét câu truy vấn sau: " Hãy cho biết tên điểm sinh viên học học phần sở liệu" Số hóa trung tâm học liệu http://lrc.tnu.edu.vn/ 46 Câu SQL nhƣ sau: SELECT HOSOSV.hoten, DIEM.diem FROM HOSOSV, DIEM, HOCPHAN WHERE (HOSOSV.Masv = DIEM.Masv) AND (DIEM.Mahp = HOCPHAN.Mahp) AND (HOCPHAN.Tenhp = "cơ sở liệu") Cây truy vấn tiền xử lý là: HOSOSV.hoten, DIEM.diem HOCPHAN.Tenhp = "cơ sở liệu" HOSO.Masv = DIEM.Masv HOSOSV DIEM.Mahp = HOCPHAN.Mahp DIEM HOCPHAN Hình 3.2 Cây truy vấn tiền xử lý ví dụ Các toán tử tƣơng đƣơng: hoten, diem hoten, diem Tenhp = "cơ sở liệu" Tenhp = "cơ sở liệu" hoten, diem Tenhp = "cơ sở liệu" Masv Mahp HOCPHAN Mahp HOSOSV DIEM HOCPHAN Masv HOSOSV (a) Masv, Mahp DIEM HOCPHAN (b) HOSOSV HOSOSV (c) Hình 3.3 Các nối tƣơng đƣơng ví dụ Số hóa trung tâm học liệu http://lrc.tnu.edu.vn/ 47 Ví dụ 3.2 Xét câu truy vấn sau: "Liệt kê sinh viên ngành CNTT theo lớp" Câu SQL nhƣ sau: SELECT HOSOSV.hoten FROM HOSOSV, KHOA, NGANH WHERE (HOSOSV.Makhoa =KHOA.Makhoa) AND (KHOA.Manganh = NGANH.Manganh) SORT BY HOSOSV.Malop Asc Cây truy vấn tiền xử lý là: Sort phép xếp HOSOSV.hoten Sort HOSOSV.Makhoa =KHOA.Makhoa HOSOSV KHOA.Manganh = NGANH Manganh KHOA NGANH Hình 3.4 Các nối tƣơng đƣơng ví dụ Các toán tử tƣơng đƣơng: hoten hoten hoten Sort Sort Sort Makhoa Manganh HOSOSV KHOA NGANH (a) Manganh, Makhoa Manganh HOSOSV Makhoa KHOA (b) NGANH HOSOSV HOSOSV NGANH (c) Hình 3.5 Các nối tƣơng đƣơng ví dụ Số hóa trung tâm học liệu http://lrc.tnu.edu.vn/ 48 Ví dụ 3.3 Xét quan hệ Bảng 3.1 Khoa Makhoa Tenkhoa Sodienthoai Slgiaovien 001 Công nghệ Thông tin 0316265336 25 002 Điện - Điện tử 0316265337 15 003 Quản trị kinh doanh 0313726971 12 Bảng 3.2 Sinhvien Masv Hodem Ten Ngaysinh 00201 Nguyễn Đức Anh 00202 Hà Thị Lan 00203 Phan Thị Diachi Gioitinh Khoa 10/02/1982 Nam CNTT Anh 11/10/1983 Nữ QTKD Hà 04/06/1985 Nữ CNTT Bảng 3.3 monnganh Mamon manganh Sodvht 001 C480201 002 C510302 003 42480207 Bảng 3.4 Lophoc Malop Tenlop 2CT11A Tin học 2QT12 2CT7 Manganh Khoahoc Makhoa He C480201 11 CNTT Cao đẳng Quản lý C510302 12 QTKD Cao đẳng Lập trình 42480207 CNTT Cao đẳng Mối liên hệ quan hệ nhƣ hình 3.6 Số hóa trung tâm học liệu http://lrc.tnu.edu.vn/ 49 Xét quan hệ Sinhvien bảng 3.2 vào mối liên hệ quan hệ hình 3.6 Ta phân mảnh dẫn xuất quan hệ Sinhvien thành nhóm sinh viên thuộc khoa có số lƣợng giáo viên lớn 20 nhóm sinh viên thuộc khoa có số lƣợng giáo viên từ 20 trở xuống Sinhvien1 = Sinhvien |>< Khoa1 Sinhvien2 = Sinhvien |>< Khoa2 Trong Khoa1 = Khoa (Slgiaovien >20) Khoa2 = Khoa (Slgiaovien

Ngày đăng: 17/08/2015, 11:20

Từ khóa liên quan

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

Tài liệu liên quan