2. Cấu trúc luận văn
2.3.7. Phân đoạn ma trận hấp dẫn
2.3.7.1. Ma trận hấp dẫn của các thuộc tính
Theo [6], quay lại bảng thống kê, cho phép xác định AFF, tức mức độ hấp dẫn giữa các thuộc tính. Mức hấp dẫn tạo nên ma trận hấp dẫn AA. Ngườ i ta có vài khái niệm sau:
Đối với mỗi giao tác Tk, như trên đã xét các quá trình Pk, ngườ i ta đưa ra uki = 1, cho biết giao tác k sử du ̣ng thuộc tính Ai; ngược lại uki =0.
Người ta xác định các kiểu truy cập (i) 'r' ứng với tìm kiếm; (ii) 'u'
ứng với cập nhật. giữa hai thuộc tính Ai, Aj có AFF (Ai, Aj), kí hiệu là AFFij.
Xác định AFF theo công thức: 1 1 |uki ukj k k ij ACC AFF Công thức 3
Hình 2.19. Ma trận sử du ̣ng các thuộc tính, như hình 4, nhưng cho T truy cập nhiều Ai
ACC là độ đo số các truy cập của giao tác Tk đến thể hiện của đối tượng trong chu kì thời gian. Nó được xác định theo ACCk = nk * freqk; trong đó nk là số các truy cập đến thể hiện đối tượng đối với một thể hiện của giao tác k, tính trên một trạm; freqk là tần suất thể hiện của giao tác k, trên một trạm. Nếu tính trên nhiều trạm, ACCk được tính
j
kj j
k n freq
ACC * , trong đó
freqkj là tần suất thể hiện giao tác k tại trạm j.
Vậy theo dữ liệu đầu vào như trong bảng 3, với nhiều trạm, AFF (ứng với quá trình Pk) trong bảng 3 chính là ACC (ứng với giao tác Tk) đang đề cập. Tuy nhiên ngườ i ta tính theo công thức 4 và xét hình 16:
AFF11 = ACC1 + ACC4 = 4 + 5 =9, do u11=1, u41=1;
AFF12=0 do không có k để uk1=1 và uk2=1;
AFF13 = ACC1 + ACC3 = 4 + 5 = 9, do có u41 = 1 và u43=1;
AFF14=0;
AFF15 =0 …
2.3.7.2. Phân cụm các thuộc tính
j i j i j i j i j i
ij AFF AFF AFF AFF
AFF , , 1 , 1 1 , 1 , ) ( Công thức 4
Công thức này tương tự công thức 1 về độ đo năng lượng ME. Thuật toán hoán vị các thuộc tính, để tính năng lượng cực đại. Trong công thức trên, lấy AFFi, 0 = AFF0, j = AFFi, n+1 = AFFn+1, j =0.
2.3.7.3. Phân đoạn ma trận hấp dẫn xếp cụm đã sắp xếp các dòng
Quay lại với ma trận cuôi cùng của bước trước. Trong ma trận này, cần xác định điểm x trên đường chéo chính. Điểm x xác định hai khối U và L, ứng với khối trên, khối dưới. Mỗi khối xác định đoạn dọc theo các thuộc tính trong khối đó. Ngườ i ta kí hiệu A(k) = {i| uki =1}. Ngoài ra T = {k | k là giao tác}; LT = { k | A(k) L}; UT = { k | A(k) U}; IT = T - {LT UT}. Xác định tiếp k IT k k UT k k LT k T k
k CL ACC CU ACC CI ACC
ACC CT , , ,
Nhiệm vụ của pha này là cực đại hóa z = CL * CU - CI2. Công thức 5
Hình 2.20. Chọn điểm x
Hoặc đơn giản, khi chọn được điểm x, ngườ i ta xem đã tách được các khối; kí hiệu CTQ ứng với các ứ ng du ̣ng truy cập các thuộc tính thuộc nửa trên của ma trận; CBQ ứng với ứ ng du ̣ng truy cập các thuộc tính thuộc nửa dưới ma trận; CTBQ ứng với các ứng du ̣ng truy cập các thuộc tính của phần dưới và thuộc tính phần trên.
2.3.7.4. Bước tìm x đầu tiên
Người ta bắt đầu với điểm x dưới cùng, trên đường chéo chính; đó là tọa độ Cp, Cp của ma trận.
Hình 2.21. Ma trận đầu vào cho việc tìm x lần đầu
Các quá trình ứng với CTQ là PCTQ, ứng với CBQ là PCBQ, và quá trình ứng với CTBQ là PCTBQ. Theo dữ liệu đầu vào, bảng 2, ngườ i ta có:
PCTQ = {P1, P3, P4, P5};
PCBQ = rỗng;
PCTBQ = {Pp}.
Theo dữ liệu bảng 3, tính được giá của các quá trình:
Giá của PCTQ = 4 + 5+5+4 = 18;
Giá của PCBQ = 0;
Giá của PCTBQ = 7.
Theo cách tính của công thức 5, kiểm tra thấy giá trị cực đại là Giá cực đại = 18*0-72 = - 49
2.3.7.5. Các bước tìm x tiếp theo
Tiếp theo, dịch lên phía trái trên, ngườ i ta đến tọa độ C5, C5. Đầu vào lag ma trận như hình sau:
Hình 2.22. Ma trận đầu vào đối với C5, C5
Việc tính mức đóng góp và giá cực đại như đối với điểm x trước đây. Người ta vẫn dựa vào thông tin trong bảng 2 và bảng 3, ứng với các dữ liệu đầu vào cho quá trình phân đoạn.
Người ta có
Do vậy, theo công thức tính giá, thu được giá cực đại với giải pháp chọn điểm x để phân đoạn là C5, C5: 14 * 7 - 42 = 82.
Đối với lần tính này, người ta cần chuyển vị dòng cuối lên đầu, cột đầu về cuối. Như vậy ngườ i ta được ma trận khác.
Hình 2.23. Chuyển vị sau một lần tính giá trị cực đại
Tiếp tục chuyển lên tọa độ x khác. Bây giờ đó là tọa độ C4, C5.
Do vậy, giá cực đại ứng với trường hợp này của x: 5 * 7 - 13* 13 = - 134.
Ma trận lại được chuyển vị; dòng cuối lên đầu, cột đầu về cuối.
Hình 2.24. Ma trận chuyển vị, là cuối của bước này, đầu vào cho bước chọn x tiếp theo.
Xuất phát từ ma trận hình 21, điểm x mới ứng với tọa độ Cp, C5. Theo dữ liệu bảng 2, bảng 3, thu được:
Giá của các quá trình: của PCTQ là 0; của PCBQ là 4 + 7 =11; của PCTBQ là 5 + 5 + 4 = 14. Giá trị cực đại là 0 * 11 - 14 * 14 = - 196.
Hình 2.25. Chuyển vị, nhưng không cần thiết.
2.3.7.6. Đánh giá cuối cùng
Trở lại ma trận ban đầu, như hình sau.
Hình 2.26. Phân đoạn trên ma trận ban đầu, tức ma trận hấp dẫn xếp cụm.
Điểm x cho giá trị đánh giá cực đại ứng với giá 82, tức tọa độ C5, C5. Cũng có thể xem đó là tọa độ C3, C3.
Với điểm x này, ngườ i ta được các đoạn {C1, C4, C3} và {C5, Cp}. Do C1 là thuộc tính khóa, ngườ i ta cần bổ sung nó vào đoạn sau, tức có hai đoạn:
{C1, C4, C3}, tức {mã số của đơn vị, tên đơn vị, địa chỉ};
{C1, C5, Cp}, tức {mã số của đơn vị, số nhân viên, tên lãnh đạo đơn vị}.
Sau khi có các đoạn, người ta lại phân đoạn tiếp đối với mỗi đoạn nhỏ, nếu thấy cần thiết.
2.4. Kết luận chương
Chương 2 đã trình bày khái niệm về phân đoạn trong quá trình thiết kế cơ sở dữ liệu phân tán. Phần trên đã giới thiệu (i) phân đoạn ngang; (ii) phân đoạn dọc và phân đoạn hỗn hợp.
Phân đoạn dọc được trình bày chi tiết, từng bước với việc áp dụng thuật toán tụ năng lượng. Thuâ ̣t toán tụ năng lượng là mấu chốt trong thiết kế cơ sở dữ liệu phân tán theo phân đoạn dọc.
Chương 3
THỬ NGHIỆM VÀ ỨNG DỤNG THỰC TẾ