Hệ thống giao diện

Một phần của tài liệu (LUẬN văn THẠC sĩ) phép dịch chuyển lược đồ khối trong mô hình dữ liệu dạng khối (Trang 69)

CHƢƠNG 3 CHƢƠNG TRÌNH THỬ NGHIỆM

3.3. Cài đặt và thực hiện chƣơng trình thử nghiệm

3.3.3. Hệ thống giao diện

Giao diện nhập khối ban đầu, các phụ thuộc hàm, tập thuộc tính:

Hình 3.2 Giao diện nhập dữ liệu 3.3.4. Kết quả thử nghiệm chương trình và đánh giá

Ví dụ 3.1

Cho lƣợc đồ khối = (R,F), với R = (id; A1A2A3A4A5A6); id = {1}

F={ {1(1), 1(5) } {1(4)}, {1(1)} {1(4), 1(6)},

{1(2), 1(3) } {1(5)}, {1(5)} {1(2), 1(3)} } X = {1(1), 1(4), 1(6)}

V=R\X = {1(2), 1(3), 1(5)} G = { {1(5) } (loại), (loại), {1(2), 1(3)} {1(5)}, {1(5)} {1(2), 1(3)} } = { {1(2), 1(3)} {1(5)}, {1(5)} {1(2), 1(3)} } Lƣợc đồ khối = \ X thu đƣợc có dạng: = (V,G) với V = (id; A2A3A5); id = {1} G = { {1(2), 1(3)} {1(5)}, {1(5)} {1(2), 1(3)} } Kết quả thực hiện trong chƣơng trình:

Trong ví dụ này, id ={1}, lƣợc đồ khối suy biến thành LĐQH, phép dịch chuyển lƣợc đồ khối trở thành phép dịch chuyển trong mô hình quan hệ.

Ví dụ3.2

Cho lƣợc đồ khối = (R,F), với R = (id; ABCDEHKI); id ={1} F = { {(1; A), (1; B)} {(1; C)}, {(1; C)} {(1; D), (1; E) (1; H)}, {(1; H)} {(1;K)}} X = {(1; B), (1; I)} Hãy xác định = \ X

Kết quả thực hiện trên phần mềm:

Ta dịch chuyển α theo X, ta đƣợc sơ đồ β = <V,G> V = ({1}; ACDEHK)

G = { {(1; A)} {(1; C)},

{(1; C)} {(1; D), (1; E) (1; H)}, {(1; H)} {(1; K)} }

Ví dụ 3.3

Cho lƣợc đồ khối = (R,F), với R = (id; A1A2A3A4A5A6); id = {1, 2} F={ {1(1), 2(1), 1(5), 2(5)} {1(4), 2(4)}, {1(1), 2(1)} {1(3), 2(3)}, {1(5), 2(5)} {1(2), 2(2), 1(3), 2(3)}, {1(5), 2(5), 1(6), 2(6)} {1(1), 2(1)}, {1(1), 2(1), 1(3), 2(3)} {1(5), 2(5), 1(6), 2(6)},{1(2), 2(2), 1(4),2(4)} {1(3), 2(3)} X = {1(2), 2(2), 1(3), 2(3), 1(5), 2(5)} + Xác định = \ X = (V,G), V = R\X, G = F\X + Tìm một khóa của lƣợc đồ khối

Kết quả thực hiện trên phần mềm: Áp dụng thuật toán 2.4 V=R\X = {1(1), 1(4), 1(6), 2(1), 2(4), 2(6)} G = F\X ={ {1(1),2(1)} {1(4), 2(4)}, {1(1), 2(1)} (loại), (loại), {1(6), 2(6)} {1(1), 2(1)}, {1(1),2(1)} {1(6),2(6)}, {1(4), 2(4)} (loại) } Thu gọn G, ta đƣợc:

G ={ {1(1), 2(1)} {1(4), 2(4), 1(6), 2(6)}, {1(6), 2(6)} {1(1), 2(1)} } Vậy = \ X thu đƣợc có dạng: = (V,G) với V = (id; A1A4A6); id = {1,2} G ={ {1(1), 2(1)} {1(4), 2(4), 1(6), 2(6)}, {1(6), 2(6)} {1(1), 2(1)} } Áp dụng thuật toán 2.5 id = {1, 2} nên R có 2 lát cắt R1 = ({1}; A1A2A3A4A5A6); với tập FTH Fh1={ {1(1), 1(5) } {1(4)}, {1(1)} {1(3)}, {1(5)} {1(2), 1(3)} , {1(5), 1(6) } {1(1)}, {1(1), 1(3) } {1(5), 1(6) }, {1(2), 1(4) } {1(3)}} R2 = ({2}; A1A2A3A4A5A6); với tập FTH Fh1={ {2(1), 2(5) } {2(4)}, {2(1)} {2(3)}, {2(5)} {2(2), 2(3)} , {2(5), 2(6) } {2(1)}, {2(1), 2(3) } {2(5), 2(6) }, {2(2), 2(4) } {2(3)} }

Ta cần thực hiện phép dịch chuyển trên 2 lát cắt với các lƣợc đồ tƣơng ứng

1 = (R1,Fh1) trên tập thuộc tính X1 = {1(2), 1(3), 1(5)}, 2 = (R2,Fh2) trên tập thuộc tính X2 = { 2(2), 2(3), 2(5)} Ta có: 1 = 1\ X1 = (V1,G1) V1=R1\X1 = {1(1), 1(4), 1(6)} G1 = Fh1\X1 = { {1(1)} {1(4)}, {1(1)} (loại), (loại), {1(6)} {1(1)}, {1(1)} {1(6) }, {1(4)} (loại) } Thu gọn G1, ta đƣợc G1 = { {1(1)} {1(4),1(6) }, {1(6)} {1(1)} } Tƣơng tự, ta có

2 = 2\ X2 = (V2,G2) V2=R2\X2 = {2(1), 2(4), 2(6)} G2 = { {2(1)} {2(4),2(6) }, {2(6)} {2(1)} } Vậy = \ X thu đƣợc có dạng: = (V,G) với V = (id; A1A4A6); id = {1,2} G = { {1(1)} {1(4),1(6) }, {1(6)} {1(1)}, {2(1)} {2(4),2(6) }, {2(6)} {2(1)} } ={ {1(1), 2(1)} {1(4), 2(4), 1(6), 2(6)}, {1(6), 2(6)} {1(1), 2(1)} }

Nhƣ vậy, qua một số ví dụ, các kết quả thử nghiệm trên phần mềm hoàn toàn trùng khớp với việc thực hiện thuật toán trên giấy. Việc áp dụng 2 thuật toán dịch chuyển lƣợc đồ khối có kết quả tƣơng tự nhau.

Kết luận chƣơng 3

Trong chƣơng này,tác giả đã tiến hành xây dựng một chƣơng trình trên ngôn ngữ lập trình C# trên nền tảng Visual Studio 2013,sử dụng các thuật toán dịch chuyển nhằm thu gọnlƣợc đồ và áp dụng phƣơng pháp biểu diễn khóa của lƣợc đồ khối trong ứng dụng trên.

Tác giả cũng đã đƣa ra một số ví dụ đơn giản để thử nghiệm kết quả thực hiện chƣơng trình với việc thực hiện thuật toán trên giấy với kết quả trùng khớp. Tuy nhiên, đây mới chỉ là ứng dụng hết sức đơn giản, chỉ dừng lại ở mức độ mô phỏng kết quả nghiên cứu của tác giả. Việc xây dựng chƣơng trình có tính ứng dụng trong thực tế cần phải đầu tƣ nhiều hơn nữa thời gian và công sức.

KẾT LUẬN

Qua tìm hiểu và nghiên cứu về phép dịch chuyển lƣợc đồ khối trong mô hình dữ liệu dạng khối, luận văn đã thực hiện đƣợc một số kết quả chính sau đây:

- Tìm hiểu về 1 mô hình dữ liệu mới, đó là mô hình dữ liệu dạng khối. Mô hình này là một mở rộng của mô hình dữ liệu quan hệ do E.Codd đề xuất năm 1970.

- Trình bày một số kết quả nghiên cứu về bao đóng, khóa và phụ thuộc hàm trong mô hình này đồng thời cũng giới thiệu các tính chất về khóa, thuật toán tìm khóa, các dạng chuẩn và tựa chuẩn... Mối liên quan giữa mô hình dữ liệu dạng khối với mô hình quan hệ.

- Tìm hiểu và giới thiệu phép dịch chuyển lƣợc đồ khối trên mô hình dữ liệu dạng khối và một số thuật toán liên quan; ứng dụng các thuật toán trên vào việc xây dựng chƣơng trình demo cho phép thực hiện một số thao tác trên mô hình dữ liệu dạng khối.

Trên đây là một số kết quả mà luận văn đã tìm đƣợc đối với phép dịch chuyển lƣợc đồ khối trong mô hình dữ liệu dạng khối. Tuy nhiên, đó chỉ là những kết quả bƣớc đầu, việc nghiên cứu tiếp về mô hình dữ liệu này vẫn còn là những vấn đề mở cần đƣợc nghiên cứu tiếp.

TÀI LIỆU THAM KHẢO A. Tiếng Việt

[1] Nguyễn Kim Anh (2002), “Đại số khối trên các cơ sở dữ liệu đa chiều”, Tạp chí Tin học và Điều khiển học, 18(2), tr. 149-154.

[2] Nguyễn Xuân Huy (2006), Các phụ thuộc logic trong cơ sở dữ liệu,

Nhà xuất bản Thống kê, Hà Nội.

[3] Lê Văn Phùng (2010), Cơ sở dữ liệu quan hệ và Công nghệ phân tích-Thiết kế, Nhà xuất bản Thông tin và Truyền thông, Hà Nội.

[4] Trịnh Đình Thắng (2011), Mô hình dữ liệu dạng khối, Nhà xuất bản Lao Động, Hà Nội.

[5]Vũ Đức Thi (1997), Cơ sở dữ liệu: Kiến thức và thực hành, NXB Thống Kê, Hà Nội.

[6] Vũ Đức Thi (2010), Giáo trình Cơ sở dữ liệu nâng cao, Nhà xuất bản Đại học Thái Nguyên, Thái Nguyên.

[7] Trịnh Đình Vinh (2011), Một số phụ thuộc dữ liệu trong cơ sở dữ liệu dạng khối, Luận án tiến sĩ toán học, Hà Nội.

B. Tiếng Anh

[8] C. Stolte, D. Tang, and P. Hanrahan. Polaris (2002): “A System for Query, Analysis, and Visualization of Multi-dimensional Relational Databases”. In IEEE Trans. On Visualization and Computer Graphics, 8(1), pp. 52-65.

[9] Demetrovics J, Ho Thuan, Nguyen Xuan Huy, Le Van Bao (1986),

Translations of relation schemes, balanced relation scheme and the problem of key representation, EIK, Berlin.

[10] E. Rundensteiner, M. Ward, J. Yang, and P. Doshi. XmdvTool (2002): “VisualInteractive Data Exploration and Trend Discovery of High- dimensional Data Sets”. In Proc. ACM SIGMOD 2002.

[11] Harinarayan V., Rajaraman A., and Ullman J. D. (1996), “Implementing data cubes efficiently”, SIGMOD.

Một phần của tài liệu (LUẬN văn THẠC sĩ) phép dịch chuyển lược đồ khối trong mô hình dữ liệu dạng khối (Trang 69)