Tải bản đầy đủ (.pdf) (94 trang)

Rút gọn câu truy vấn và ứng dụng trong cơ sở dữ liệu phân tán

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.3 MB, 94 trang )

i
ĐẠI HỌC THÁI NGUYÊN
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG

PHANNOUVONG NISASON

RÚT GỌN CÂU TRUY VẤN VÀ ỨNG DỤNG TRONG
CSDL PHÂN TÁN

LUẬN VĂN THẠC SĨ: KHOA HỌC MÁY TÍNH

Thái Nguyên, 2017http://www. lrc.tnu.edu.vn/
Số hóa bởi Trung tâm Học liệu - ĐHTN


ii

ĐẠI HỌC THÁI NGUYÊN
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG

PHANNOUVONG NISASON

RÚT GỌN CÂU TRUY VẤN VÀ ỨNG DỤNG TRONG
CSDL PHÂN TÁN

LUẬN VĂN THẠC SĨ: KHOA HỌC MÁY TÍNH
Mã số: 60 48 01 01

Người hướng dẫn khoa học:
TS. Vũ Đức Thái


Thái Nguyên, 2017
http://www. lrc.tnu.edu.vn/

Số hóa bởi Trung tâm Học liệu - ĐHTN


iii
LỜI CAM ĐOAN
Tôi xin cam đoan, kết quả của luận văn hoàn toàn là kết quả của tự bản
thân tôi tìm hiểu, nghiên cứu xử lý. Các tài liệu tham khảo được trích dẫn và
chú thích đầy đủ.

Tác giả

PHANNOUVONG Nisason

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
Lời đầu tiên tôi xin gửi lời cảm ơn chân thành nhất đến thầy
TS. VŨ ĐỨC THÁI đã định hướng và nhiệt tình hướng dẫn, giúp đỡ tôi rất
nhiều về mặt chuyên môn, kiến thức trong quá trình làm luận văn.
Tôi xin gửi lời biết ơn sâu sắc đến các thầy, các cô đã dạy dỗ và truyền
đạt những kiến thức, kinh nghiệm quý báu cho chúng tôi trong suốt hai năm
cao học ở trường Đại học Công nghệ Thông tin và Truyền thông - Đại học
Thái Nguyên.

Cuối cùng tôi xin dành tình cảm thân thiết nhất cho cha mẹ và
gia đình, bạn bè, đồng nghiệp những người luôn gần gũi để động viên, chia
sẻ cùng tôi trong suốt thời gian qua.
Thái Nguyên, Tháng 4 năm 2017

PHANNOUVONG Nisason

Số hóa bởi Trung tâm Học liệu - ĐHTN

http://www. lrc.tnu.edu.vn/


v
MỤC LỤC
LỜI CAM ĐOAN ............................................................................................. I
LỜI CẢM ƠN ................................................................................................ IV
MỤC LỤC ....................................................................................................... V
DANH MỤC CHỮ VIẾT TẮT .................................................................. VII
PHẦN MỞ ĐẦU .............................................................................................. 1
1. Đặt vấn đề...................................................................................................... 1
2. Đối tượng và phạm vi nghiên cứu ................................................................. 1
3. Những nội dung nghiên cứu chính ................................................................ 2
4. Phương pháp nghiên cứu ............................................................................... 2
5. Ý nghĩa khoa học của đề tài .......................................................................... 2
CHƯƠNG 1: LÝ THUYẾT VỀ THAO TÁC TRÊN CƠ SỞ DỮ LIỆU
QUAN HỆ ....................................................................................................... 3
1.1. Các phép toán logic .................................................................................... 3
1.1.1. Logic hình thức ................................................................................... 3
1.1.2. Logic mệnh đề và chân lý ................................................................... 3
1.2 Tổng quan về CSDL phân tán ..................................................................... 7

1.2.1. Các phương pháp phân mảnh và tái thiết. ......................................... 10
1.2.2. Cách tạo cây toán tử từ câu SQL. ..................................................... 27
1.3. Kết luận ................................................................................................... 30
CHƯƠNG 2: PHÂN RÃ VẤN TIN VÀ CỤC BỘ HÓA DỮ LIỆU.......... 32
2.1. Phân rã vấn tin câu vấn tin SQL . ............................................................ 32
2.1.1. Phân tích câu truy vấn trên cơ sở “kiểu dữ liệu” và “ngữ nghĩa” ..... 33
2.1.2. Loại bỏ dư thừa và tối ưu câu truy vấn ............................................. 36
2.2. Cục bộ hóa dữ liệu phân tán và các phương pháp rút gọn câu truy vấn. . 39
2.2.1. Cục bộ hóa dữ liệu phân tán.............................................................. 39
2.2.2. Rút gọn câu truy vấn SQL phân tán .................................................. 40
2.3. Kết luận ................................................................................................... 64
Số hóa bởi Trung tâm Học liệu - ĐHTN

http://www. lrc.tnu.edu.vn/


vi
CHƯƠNG 3: TỐI ƯU TRUY VẤN PHÂN TÁN CHO CSDL TẠI
TRƯỜNG CĐ KỸ THUẬT VIÊNG CHĂN ............................................... 65
3.1. Ứng dụng trong xử lý dữ liệu học tập tại trường cao đẳng kỹ thuật Viêng
Chăn................................................................................................................. 65
3.1.1. Lý thuyết và kỹ thuật trong các câu lệnh ........................................ 65
3.1.2. Giới thiệu CSDL của trường cao đẳng kỹ thuật Viêng Chăn năm học
2015-2016.................................................................................................... 72
3.1.2. Một số dạng rút gọn câu vấn tin trên CSDL (tại mục 3.1.1) đã được
phân mảnh. .................................................................................................. 74
3.2. Kết luận ................................................................................................... 85
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN CỦA LUẬN VĂN ................... 86
TÀI LIỆU THAM KHẢO ............................................................................ 87


Số hóa bởi Trung tâm Học liệu - ĐHTN

http://www. lrc.tnu.edu.vn/


vii
DANH MỤC CHỮ VIẾT TẮT
CSDL: Cơ sở dữ liệu.
CĐ: Cao đẳng.
DDBMS: Distributed Database Management System.
DDBS: Distributed Database System.
LAN: Local Area Network.
SQL: Structured Query Language.

Số hóa bởi Trung tâm Học liệu - ĐHTN

http://www. lrc.tnu.edu.vn/


1
PHẦN MỞ ĐẦU
1. Đặt vấn đề.
Ngày nay các lĩnh vực như giáo dục, thương mại ... ngày càng mở rộng
và phát triển. Để hoạt động được thuận lợi và có hiệu quả cần phải nắm bắt
thông tin nhanh nhất khi các địa điểm ở xa nhau. Theo mô hình đám mây, các
máy chủ CSDL lắp đặt tập trung tại một địa điểm an toàn, dữ liệu được phân
bố trong các thiết bị lưu trữ cũng coi như là kiến trúc phân tán.
Như vậy, mô hình cơ sở dữ liệu phân tán đã, đang được nghiên cứu và
ứng dụng vào thực tế. Việc cần làm là nghiên cứu và làm sáng tỏ thêm khả
năng ứng dụng thực tiễn của cơ sở dữ liệu phân tán.

Lợi ích cơ bản nhất của cơ sở dữ liệu phân tán là dữ liệu của các cơ sở
dữ liệu vật lý riêng biệt được tích hợp logic với nhau làm cho nhiều người sử
dụng trên mạng có thể truy nhập được.
Cơ sở dữ liệu phân tán với cấp độ tự trị cao ở mỗi điểm. Trong hệ phân
tán các giải pháp rút gọn câu vấn tin phân tán làm giảm thời gian tính toán,
giảm khối lượng truyền thông tin giữa các trạm và giảm không gian bộ nhớ,
tránh được các công việc dư thừa, loại bỏ những phần vô ích và để phục vụ
cho việc xử lí song song. Được sự đồng ý của giáo viên hướng dẫn thực hiện
nghiên cứu “Rút gọn câu truy vấn và ứng dụng trong CSDL phân tán” làm
đề tài luận văn tốt nghiệp của mình.
2. Đối tượng và phạm vi nghiên cứu
- Cơ sở dữ liệu có cấu trúc và cấu trúc phân tán
- Vấn đề truy vấn trong cơ sở dữ liệu phân tán và các giải pháp tối ưu các
câu truy vấn.
- Xây dựng một cơ sở dữ liệu trong thực tế minh họa cho các giải pháp
- Cài đặt mô phỏng các thao tác xử lý.

Số hóa bởi Trung tâm Học liệu - ĐHTN

http://www. lrc.tnu.edu.vn/


2
3. Những nội dung nghiên cứu chính
- Kiến trúc cơ sở dữ liệu phân tán: Các mô hình, cách tổ chức, phân
mảnh CSDL theo kiến trúc phân tán.
- Xây dựng một CSDL phân tán nhỏ để thử nghiệm thuật toán
- Xây dựng một số câu truy vấn và tối ưu
- Đánh giá hiệu quả tối ưu
4. Phương pháp nghiên cứu

-

Phương pháp phân tích thiết kế CSDL

-

Phương pháp phân mảnh CSDL phân tán

-

Phương pháp xây dựng câu truy vấn và rút gọn câu truy vấn SQL

5. Ý nghĩa khoa học của đề tài
Luận văn ứng dụng các lý thuyết về CSDL phân tán, câu truy vấn SQL
vào thực tế làm rõ hơn ưu điểm của mô hình phân tán. Xây dựng bài toán ứng
dụng như một CASE STUDY để nghiên cứu nâng cao kỹ năng kinh nghiệm
triển khai cho người đọc.

Số hóa bởi Trung tâm Học liệu - ĐHTN

http://www. lrc.tnu.edu.vn/


3
CHƯƠNG 1: LÝ THUYẾT VỀ THAO TÁC TRÊN
CƠ SỞ DỮ LIỆU QUAN HỆ
1.1. Các phép toán logic
1.1.1. Logic hình thức
Logic hình thức là loại logic được xác định bởi cú pháp và ngữ nghĩa
như sau:

Cú pháp
Cú pháp của logic hình thức là việc sử dụng các đối tượng và các phép
kết nối logic các đối tượng lại để tạo ra một biểu thức logic chuẩn (theo một
nghĩa nào đó). Như vậy biểu thức logic bao gồm:
- Tập kí hiệu là các kí tự: a, b, c, …, A, B, C, …
- Tập các phép toán logic: NOT, AND, OR, XOR (tương ứng với các
phép toán đại số quan hệ  ,  , , )
- Dùng một dãy hữu hạn các ký hiệu và các phép toán trên để tạo ra
biểu thức logic.
- Cho trước một tập các quy tắc, dựa vào tập quy tắc này để tạo ra các
biểu thức logic chuẩn.
Ngữ nghĩa
Ngữ nghĩa của biểu thức logic là ý nghĩa của biểu thức logic đó. Có thể
dùng các phương pháp: quy nạp, đệ quy, suy luận, các quy tắc, các lược đồ
chứng minh,... để chỉ ra một biểu thức logic cho trước là chuẩn hay không
chuẩn và cho biết chân lý của biểu thức đó.
1.1.2. Logic mệnh đề và chân lý

- Mệnh đề là một phát biểu để diễn tả một khẳng định là đúng hoặc sai,
nó không thể vừa đúng lại vừa sai, hay mang tính chất mập mờ.

Số hóa bởi Trung tâm Học liệu - ĐHTN

http://www. lrc.tnu.edu.vn/


4
- Giá trị đúng hay sai của mệnh đề được gọi là chân lý của mệnh đề và
thường được kí hiệu là 1 (hoặc T hoặc True) đối với chân lý đúng , còn chân
lý sai được kí hiệu là 0 (hoặc F hoặc False).

- Mệnh đề logic rất quan trọng trong khoa học máy tính.
- ...
Các kí hiệu dùng trong mệnh đề logic
()

Dùng để chỉ độ ưu tiên của phép toán logic.



Phủ định (NOT)



Hội (Conjunction AND)



Tuyển (Disjunction OR)



Ký hiệu điều kiện (If…Then…)



Kéo theo hai chiều (If AND Only If)



Tổng trực giao (XOR)


Kí hiệu Ai i  1, n là mệnh đề thứ i, có thể dùng mệnh đề như là tham
số, các kí hiệu logic có ý nghĩa không đổi, còn các tham số có nội dung phụ
thuộc và ngữ cảnh.
Nói chung các kí hiệu trong biểu thức logic là hữu hạn hoặc đếm được,
nhưng hầu hết các kết luận vẫn đúng cho trường hợp không đếm được.
Mệnh đề được chia làm hai loại cơ bản:
- Mệnh đề sơ cấp (elementary), nó là các nguyên tử (atom)-không thể
chia nhỏ được;
- Mệnh đề phức hợp (compound), đó mệnh đề được tạo ra từ các mệnh
đề khác bằng cách sử dụng các phép toán logic.
Để máy tính hiểu được, chúng ta dùng các kí hiệu cho các mệnh đề,
được gọi là biến mệnh đề. Các biến mệnh đề được kí hiệu bởi các chữ cái
thường.
Biểu thức logic: Biểu thức logic chính là mệnh đề phức hợp.

Số hóa bởi Trung tâm Học liệu - ĐHTN

http://www. lrc.tnu.edu.vn/


5
Chân lý của phép toán logic được cho ở bảng 1.1 sau:
Bảng 1.1 Chân lý của các phép toán logic
p

q

p


pq

pq

p q

pq

pq

0

0

1

0

0

0

1

1

0

1


1

0

1

1

1

0

1

0

0

0

1

1

0

0

1


1

0

1

1

0

1

1

Mức ưu tiên của các phép toán logic được thể hiện ở bảng 1.2
Bảng 1.2. Ưu tiên các phép toán logic
Ký hiệu phép toán

Nghĩa của phép toán

 ,  ,

Phủ định

,

Hội, tuyển

 , , 


Kéo theo, tương đương, tổng trực giao

Tương đương của hai biểu thức logic
Hai biểu thức logic E và F được gọi là tương đương với nhau và viết E
 F khi E và F luôn luôn có cùng chân lý.
Các quy tắc thay thế
Quy tắc 1: (Quy tắc thay thế tương đương).
Cho E là một biểu thức logic, nếu thay thế một biểu thức con của nó
bởi một biểu thức tương đương với biểu thức con đó, biểu thức logic E’ mới
nhận được sẽ tương đương với E.
Quy tắc 2: (Tính bất biến đối với biểu thức logic hằng đúng)
Cho E là biểu thức hằng đúng, nếu thay thế một mệnh đề p nào đó
trong E bởi một biểu thức logic bất kỳ ta sẽ nhận được biểu thức logic E’ mới
cũng là hằng đúng.
Số hóa bởi Trung tâm Học liệu - ĐHTN

http://www. lrc.tnu.edu.vn/


6
Ghi chú: Kết quả tương tự cho biểu thức hằng sai.
Các dạng chính tắc
Biểu thức hội cơ bản.
Biểu thức logic F = F (p1, p2, ..., pn ), trong đó pi ( i  1, n ) là các biến
mệnh đề sơ cấp, được gọi là biểu thức hội cơ bản, nếu: F = q 1  q2  ... qn ;
với qi = pi hoặc qi =pi ( i  1, n )
Biểu thức tuyển cơ bản.
Biểu thức logic E = E (p1, p2, ...pn ), trong đó pi ( i  1, n ) là các biến
mệnh đề sơ cấp, được gọi là biểu thức tuyển cơ bản, nếu: E = q1  q2  ... qn;
với qi = pi hoặc qi =pi ( i  1, n )

Biểu thức logic E = E (p1, p2, ...pn ), trong đó pi ( i  1, n ) là các biến
mệnh đề sơ cấp, được gọi là dạng tuyển chính tắc, nếu: E = E1  E2  ... En ;
trong đó mỗi Ei ( i  1, n ) là một biểu thức hội cơ bản của các pi ( i  1, n ).
Định lý:
Mọi biểu thức logic E (p1, p2, ..., pn ) đều tương đương với một biểu
thức tuyển chính tắc duy nhất. Tức là E (p1, p2, ...pn )  E1  E2  ... Em
(duy nhất ) với Ei ( i  1, m ) là các biểu thức hội cơ bản. Nghĩa là Ei = q1  q2 
... qn với qi = pi hoặc qi =pi ( i  1, n ).
Biểu thức logic hội chính tắc
Biểu thức logic F = F (p1, p2, ..., pn ), trong đó pi ( i  1, n ) là các biến
mệnh đề sơ cấp, được gọi là dạng hội chính tắc, nếu: F = F 1  F2  ... Fn ,
trong đó mỗi Fi ( i  1, n ) là một biểu thức tuyển cơ bản của các pi ( i  1, n )
Định lý:
Mọi biểu thức logic F (p1, p2, ..., pn ) đều tương đương với một biểu
thức hội chính tắc duy nhất. Tức là F (p1, p2, ..., pn )  F = F1  F2  ... Fm

Số hóa bởi Trung tâm Học liệu - ĐHTN

http://www. lrc.tnu.edu.vn/


7
(duy nhất ) với Fi ( i  1, m ) là các biểu thức tuyển cơ bản. Nghĩa là Fi = q1 
q2  ... qn với qi = pi hoặc qi =pi ( i  1, n ).
1.2 Tổng quan về CSDL phân tán
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ố bộ 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 bộ 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ý: Nhiều chức năng của hệ thống
có thể được chuyển giao cho các thành phần: phần cứng và phần mềm.
- 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: cũng có thể được phân tán. Quyền điều khiển một
số nhiệm vụ cũng được phân tán.
Hệ thống xử lý phân tán có thể phân thành các loại như sau:
- 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ộ hoá giữa các thành phần.
Sự cần thiết 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, cơ quan.
- 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:

Số hóa bởi Trung tâm Học liệu - ĐHTN

http://www. lrc.tnu.edu.vn/


8
- 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 trong khuôn
khổ của bộ khung này làm cho việc xử lý dữ liệu phân tán dễ dàng và hiệu
quả hơn.
Một số hệ thống xử lí hay được dùng:
- Hệ thống đa xử lý có bộ nhớ chung [2].
- Hệ đa bộ xử lý có shared disk [2].
- Hệ đa bộ xử lý sở hữu cá nhân [2].
Ghi chú: Phân bố vật lý của bộ xử 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,… giao
tiếp giữa các bộ xử lý được thực hiện thông qua mạng truyền thông.
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 DDBS 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 DDBS không phải là một tập hợp các tệp dữ liệu được lưu trữ
riêng rẽ tại các nút của mạng máy tính mà 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ấu trúc và vừa phải được truy xuất qua một giao
diện chung.
Phân bố vật lý của các dữ liệu không phải là vấn đề quyết định trong
DDBS. Tuy vậy, viêc phân bố vật lý của các dữ liệu sẽ nảy sinh ra các vấn đề
rất phức tạp như thực hiện các cấu trúc truy vấn, vấn đề cấp phát ...
Nhận xét:
Số hóa bởi Trung tâm Học liệu - ĐHTN

http://www. lrc.tnu.edu.vn/


9

Nếu CSDL nằm tại một nút mạng thì nó không phải là DDBS, 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 (hình 1.1) khi đó tất cả yêu cầu truy xuất CSDL
điều được chuyển đến workstation 2. Và điều cần quan tâm ở đây chỉ là thời
gian truy cập của các workstation khác đến workstation2.

Workstation1

Workstation2
Workstation5
Mạng
Truyền
Dữ Liệu
Workstation4
Workstation3
Hình 1.1. CSDL tập trung, không phải là DDBS

Nếu 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.2)

Số hóa bởi Trung tâm Học liệu - ĐHTN

http://www. lrc.tnu.edu.vn/


10

Workstation1

Workstation2


Workstation5
Mạng
Truyền Dữ
Liệu

CSDL

CSDL

Workstation4
Workstation3

CSDL
CSDL

Hình 1.2. CSDL được phân tán trên mạng, DDBS

1.2.1. Các phương pháp phân mảnh và tái thiết.
Các kiểu phân mảnh cơ bản là: Phân mảnh ngang, phân mảnh dọc.
Ngoài ra còn có các kiểu phân mảnh dựa trên hai cách cơ bản đã nêu là phân
mảnh ngang dẫn xuất và phân mảnh hỗn hợp.
Ví dụ: 1.2.1-1
Để tiện cho việc nghiên cứu ta xét CSDL quan hệ của công ty ĐiệnToán như sau:
- Quan hệ NhanVien(MaNV, TenNV, TrinhDoCM)
Trong đó NhanVien là tên quan hệ nhân viên, MaNV là mã nhân viên,
TenNV là tên nhân viên, TrinhDoCM là trình độ chuyên môn. Và dữ liệu giả
định như bảng 1.3

Số hóa bởi Trung tâm Học liệu - ĐHTN


http://www. lrc.tnu.edu.vn/


11
Bảng 1.3. Quan hệ NhanVien
MaNV

TenNV

TrinhDoCM

NV01

Viengxai VILAITHONG

Kỹ sư điện

NV02

Khamxieng THIPPHAVONG

Phân tích và thiết kế hệ thống

NV03

Souphon PHANTHAVONG

Kỹ sư cơ khí


NV04

Thonghor VILAITHONG

Lập trình viên

NV05

Khanty DETHRATSAVONG

Phân tích và thiết kế hệ thống

NV06

Khonesavanh MANIVONG

Kỹ sư điện

NV07

Mai THAMMAVONG

Kỹ sư cơ khí

NV08

Somsamai VONGSIKEO

Phân tích và thiết kế hệ thống


- Quan hệ DuAn(MaDuAn, TenDuAn, NganSach)
(trong đó DuAn là tên quan hệ dự án; MaDuAn là mã dự án; TenDuAn là
tên dự án và NganSach là ngân sách dự án, ViTri là vị trí triển khai dự án).
Và dữ liệu giả định như bảng 1.4
Bảng 1.4. Quan hệ DuAn
MaDuAn

TenDuAn

NganSach

ViTri

DA01

Thiết bị đo đạc

150000

Phonemy

DA02

Phát triển CSDL

135000

Thủ đô Viêng Chăn

DA03


CAD/ CAM

250000

Thủ đô Viêng Chăn

DA04

Bảo dưỡng

310000

KM.52

- Quan hệ TraLuong(TrinhDoCM, Luong)
- Trong đó TraLuong là tên quan hệ trả lương; Luong là tiền lương trả
cho nhân viên. Và dữ liệu giả định như bảng 1.5.

Số hóa bởi Trung tâm Học liệu - ĐHTN

http://www. lrc.tnu.edu.vn/


12
Bảng 1.5. Quan hệ TraLuong
TrinhDoCM

Luong


Kỹ sư điện

4000

Phân tích và thiết kế hệ thống

3400

Kỹ sư cơ khí

2700

Lập trình viên

2400

- Quan hệ PhanNhiem (MaNV, MaDuAn, ThoiGianLV, ChucVu)
(trong đó PhanNhiem là tên quan hệ phân nhiệm; Phân công nhân viên có
MaNV làm tại dự án có MaDuAn, Thoi GianLV là thời gian làm việc, với
nhiệm vụ. ChucVu là giữ chức vụ). Và dữ liệu giả định như bảng 1.6.
Bảng 1.6. Quan hệ PhanNhiem
MaNV

MaDuAn

ChucVu

NV01

DA01


Giám đốc

12

NV02

DA01

Nhân viên phân tích và thiết kế

24

NV02

DA02

Nhân viên phân tích và thiết kế

6

NV03

DA03

Nhân viên tư vấn

10

NV04


DA04

Kỹ sư

48

NV04

DA02

Lập trình viên

18

NV05

DA02

Giám đốc

24

NV06

DA03

Kỹ sư

48


Số hóa bởi Trung tâm Học liệu - ĐHTN

ThoiGianLV

http://www. lrc.tnu.edu.vn/


13

Kết nối giữa các quan hệ trong cơ sở dữ liệu trên như hình 1.6.
TraLuong
TrinhDoCM.Luong
l1
DuAn

NhanVien
MaNV, TenNV,TrinhDoCM

MaDuAn, TenDuAn, NganSach, ViTri
l3

l2
PhanNhiem

MaNV, MaDuAn,ChucVu, ThoiGianLV

Hình 1.3. Biểu diễn mối liên hệ giữa các quan hệ nhờ các đường nối .
1.2.1.1. Phân mảnh ngang
Có hai loại phân mảnh ngang: phân mảnh ngang nguyên thuỷ và phân

mảnh ngang dẫn xuất.
- Phân mảnh ngang nguyên thuỷ.
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 vị từ được định nghĩa trên quan hệ đó.
- Phân mảnh ngang dẫn xuất. Phân mảnh ngang dẫn xuất là phân mảnh
một quan hệ dựa vào các vị từ được định nghĩa trên quan hệ chủ (Parent).
Các thông tin cần cho phân mảnh ngang:
- Thông tin về CSDL.
Thông tin về CSDL là thông tin về lược đồ khái niệm toàn cục của
CSDL. Tức là chúng ta cần biết được cách mà quan hệ con sẽ hợp (  ) lại với
nhau như thế nào. Trong mô hình quan hệ, các liên kết giữa các thực thể cũng
được biểu thị bằng quan hệ. Với mục đích thiết kế phân tán, các mối liên kết

Số hóa bởi Trung tâm Học liệu - ĐHTN

http://www. lrc.tnu.edu.vn/


14
cũng được mô hình hoá theo kiểu mô hình quan hệ. Theo cách này, chúng ta
sẽ vẽ một đường nối có hướng từ quan hệ Parent đến quan hệ Child.
Một số thuật ngữ được sử dụng thông dụng trong mô hình mạng là
quan hệ nguồn - đích. Chúng ta định nghĩa hai hàm: Nguon và Dich, chúng là
các ánh xạ từ tập các đường nối đến tập các quan hệ. Cho trước một đường
nối chúng sẽ trả về quan hệ đích hoặc quan hệ chủ nguồn của đường nối.
Ví dụ 1.2.1.1-1
Trong ví dụ 1.2.1-1 gọi đường nối l1 của hình 1.6, các hàm Nguon và
Dich có các giá trị sau:
Nguon(l1 ) = TraLuong
Dich( l1) = NhanVien

Thông tin định lượng cần có về CSDL là lực lượng của các quan hệ,
được ký hiệu là Card(.)
- Thông tin về ứng dụng.
Chúng ta cần hai loại thông tin: định tính và định lượng về các ứng
dụng. Thông tin định tính phục vụ phân mảnh, còn thông tin định lượng sử
dụng cho mô hình cấp phát.
Những thông tin định tính gồm có các vị trí được dùng trong các câu
vấn tin. Nếu không thể phân tích được hết tất cả các ứng dụng thì ít nhất cũng
phải nghiên cứu được các ứng dụng “quan trọng” nhất.
Bây giờ chúng ta cần tìm cách xác định các vị từ đơn giản cho quan hệ
R(A1,A2 …, An) trong đó Ai là thuộc tính với miền giá trị Di. Vị từ đơn giản
pk được định nghĩa trên R có dạng:

p k : Ai  <Giá trị thuộc tính>. Trong đó

θ  {=, <, ≠, ≤, >, ≥} và giá trị thuộc tính được chon từ miền Di.
Ví dụ 1.2.1.1-2
Trong quan hệ DuAn của bảng 1.4 thì:
p1: TenDuAn = “Bảo dưỡng”
p2: NganSach ≤ 200000
Số hóa bởi Trung tâm Học liệu - ĐHTN

http://www. lrc.tnu.edu.vn/


15
là hai vị từ đơn giản trên quan hệ DuAn.
Gọi PR là tập tất cả các vị từ đơn giản được định nghĩa trên quan hệ R.
Tức là
PR = { p1, p2,... pm },

chẳng hạn PDuAn = { p1, p2}
Thấy rằng vị từ đơn giản rất dễ xử lý, tuy nhiên câu vấn tin lại thường
là tổ hợp của các vị từ đơn giản. Một tổ hợp cần đặc biệt chú ý là vị từ dạng
chuẩn hội, đó là hội của các tuyển vị từ đơn giản.
Bởi vì chúng ta luôn có thể biến đổi một biểu thức boole thành dạng
chuẩn hội, việc sử dụng vị từ hội sơ cấp trong một thuật toán không làm mất
đi tính tổng quát.
Cho một tập PR = { p1, p2,... pm }, tập các vị từ hội sơ cấp được ký hiệu
là M = { m1,m2... mn }, trong đó mk được xác định như sau:
mk =



p*i với 1≤k≤ m, 1 ≤ j ≤ z

(1.1)

iK

Với K là tập con bất kỳ của I = {1, 2, …, m}, và p* i = pi hoặc p*i =
 p i.

Ví dụ 1.2.1.1-3 Một số vị từ đơn giản có thể định nghĩa được trên quan
hệ TraLuong. ở ví dụ 1.1.2-1
p1 :

TrinhDoCM = “Kỹ sư điện”

p2 :


TrinhDoCM = “Phân tích và thiết kế hệ thống”

p3 :

TrinhDoCM = “Kỹ sư cơ khí”

p4 :

TrinhDoCM = “Lập trình viên”

p5 :

Luong

≤ 30000

p6 :

Luong

> 30000

p7 :

Luong

≥ 30000

p8 :


Luong

< 30000

Một số vị từ hội sơ cấp được định nghĩa dựa trên các vị từ đơn giản.

Số hóa bởi Trung tâm Học liệu - ĐHTN

http://www. lrc.tnu.edu.vn/


16

m1:

TrinhDoCM = ” Kỹ sư điện” ^ Luong ≤ 30000
Hay m1 = p1p5 = p1p6

m2 :

TrinhDoCM = “ Kỹ sư điện” ^ Luong > 30000
Hay m2 = p1p6 = p1p5

m3 :

TrinhDoCM = “ Kỹ sư điện” ^ Luong ≥ 30000
Hay m3 = p1p7 = p1p8

Nhận xét:
- Không phải tất cả các vị từ hội sơ cấp đều có thể định nghĩa được

nên chỉ trình bày một mẫu đại diện.
- Một số vị từ hội sơ cấp có thể vô nghĩa đối với ngữ nghĩa của quan
hệ nên ngay từ đầu chúng ta có thể loại bỏ ngay. Chẳng hạn trong quan hệ
TraLuong m1 là vị từ hội sơ cấp vô nghĩa.
Độ tuyển hội sơ cấp và tần số truy xuất:
- Độ tuyển hội sơ cấp.
Độ tuyển hội sơ cấp là số lượng các bộ của một quan hệ sẽ được truy
xuất bởi câu vấn tin được đặc tả theo một vị từ hội sơ cấp đã cho. Ký hiệu độ
tuyển hội sơ cấp mi là sel(mi).
- Tần số truy xuất.
Tần số truy xuất của một câu vấn tin q là số lần sử dụng câu vấn tin q
đó, tần số truy xuất của q được ký hiệu là acc(q).
Chú ý rằng tần số truy xuất hội sơ cấp có thể được xác định từ tần số
vấn tin. Chúng ta cũng ký hiệu tần số truy xuất của một hội sơ cấp m là
acc(m).
* Phân mảnh ngang nguyên thủy
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 Ri bao gồm
các bộ của R được chọn ra theo công thức:

Số hóa bởi Trung tâm Học liệu - ĐHTN

http://www. lrc.tnu.edu.vn/


17
Ri = Fi(R), 1≤ i ≤ z.

(1.2)


Trong đó Fi là công thức chọn. Chú ý rằng chúng ta xét Fi có dạng hội
sơ cấp.
Ví dụ 1.2.1.1-4
Phân rã quan hệ DuAn trong ví dụ 1.2.1-1 thành các mảnh ngang
DuAnH1 và DuAnH2 như sau:
DuAnH1 = NganSach 

200000

(DuAn)

DuAnH2 = NganSach > 200000 (DuAn)
Một số vấn đề gặp phải khi phân mảnh ngang.
Nếu miền biến thiên của các thuộc tính có mặt trong công thức chọn là
liên tục và vô hạn, chúng ta rất khó định nghĩa tập các công thức F = {F 1,F2,
..., Fn} thích hợp cho phân mảnh ngang. Một phương án là định nghĩa các
khoảng nếu có thể.
Nhận xét:
Cho tập các vị từ M = {mi | mi là vị từ hội sơ cấp i = 1, 2 ,…}
Ký hiệu |M| = Card(M). Vậy thì:
(1) Mảnh ngang Ri của quan hệ R là một quan hệ chứa các bộ của R
thoả mãn vị từ hội sơ cấp mi .
(2) Số lượng các mảnh ngang khi phân mảnh theo M sẽ là |M|, mỗi
mảnh ngang trong trường hợp này cũng được gọi là mảnh hội sơ cấp.
Do lí luận trên, chúng ta thấy bước đầu tiên của mọi thuật toán phân
mảnh ngang là xác định các vị từ đơn giản sẽ tạo ra các vị từ hội sơ cấp.
Hai tính chất quan trọng của tập vị từ đơn giản là tính đầy đủ và tính
cực tiểu.
Định nghĩa 1.2.1.1-1. Tập các vị từ đơn giản đầy đủ


Số hóa bởi Trung tâm Học liệu - ĐHTN

http://www. lrc.tnu.edu.vn/


18
Tập các vị từ đơn giản Pr được gọi là đầy đủ nếu và chỉ nếu xác suất
mỗi ứng dụng (vấn tin) truy xuất đến một bộ bất kỳ thuộc một mảnh hội sơ
cấp nào đó được định nghĩa theo Pr đều bằng nhau.
Định nghĩa 1.2.1.1-2. Vị từ đơn giản liên đới
Vị từ đơn giản p được gọi là liên đới nếu biết được sự ảnh hưởng của
nó đến cách thực hiện phân mảnh nghĩa là vị từ p làm cho mảnh F bị phân
thành các mảnh Fi và Fj đều khác rỗng, thì vẫn có ít nhất một ứng dụng truy
xuất đến Fi và Fj theo những cách khác nhau. Nói cách khác, vị từ đơn giản p
phải có liên đới với vị từ phân mảnh.
Định nghĩa 1.2.1.1-3 Tập vị từ đơn giản cực tiểu: Nếu tất cả các vị từ
của tập Pr đều có liên đới thì Pr được gọi là cực tiểu.
Ghi chú: Một kinh nghiệm để rút ra tính liên đới có thể được trình bày như
sau: Gọi mi và mj là hai vị từ hội sơ cấp và gọi Fi, Fj là hai mảnh tương ứng
với các vị từ hội sơ cấp này. Thế thì pi là liên đới khi và chỉ khi có sự thỏa
mãn sau:

acc(mi ) acc(m j )

card(Fi ) card(Fj )

(1.3)

Một lần nữa chúng ta lại dựa vào cảm nhận và kinh nghiệm của các nhà
thiết kế chứ không phải định nghĩa hình thức này.

Thật toán lặp sau đây cho ta tập vị từ đầy đủ và cực tiểu P’R khi đã có
tập các vị từ đơn giản PR. Thuật toán này, được gọi là COM_MIN, nội dung
COM_MIN được trình bày trong [2].
Qui tắc1 (Thừa nhận). Quy tắc về tính đầy đủ và cực tiểu.
Một quan hệ (hoặc một mảnh) được phân hoạch thành ít nhất hai phần
thì chúng phải được truy xuất khác nhau bởi ít nhất một ứng dụng.

Số hóa bởi Trung tâm Học liệu - ĐHTN

http://www. lrc.tnu.edu.vn/


×