Số hóa bởi Trung tâm Học liệu – ĐHTN http //www lrc tnu edu vn 1 ĐẠI HỌC THÁI NGUYÊN TRƢỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG ĐỖ TRUNG THÀNH TÍCH HỢP CSDL QUAN HỆ XML LUẬN VĂN THẠC SĨ KHOA H[.]
ĐẠI HỌC THÁI NGUYÊN TRƢỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THƠNG ĐỖ TRUNG THÀNH TÍCH HỢP CSDL QUAN HỆ XML LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH THÁI NGUN – 2016 Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn ĐẠI HỌC THÁI NGUYÊN TRƢỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG ĐỖ TRUNG THÀNH TÍCH HỢP CSDL QUAN HỆ XML 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 NGƢỜI HƢỚNG DẪN KHOA HỌC: PGS.TS ĐOÀN VĂN BAN THÁI NGUYÊN - 2016 Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn MỞ ĐẦU Chuyển đổi CSDL quan hệ sang XML ngƣợc lại giữ vai trò quan trọng Việc nghiên cứu, xây dựng thuật toán chuyển đổi CSDL quan hệ sang XML ngƣợc lại việc làm cần thiết, thực tốt thuật toán mang lại giá trị cao thực tiễn ngành Công nghệ Thông tin giai đoạn XML đƣợc sử dụng rộng rãi thực tế, đặc biệt với phát triển sôi động, mạnh mẽ công nghệ cảm ứng điện thoại di động máy tính bảng (dữ liệu XML đƣợc ứng dụng nhiều lĩnh vực lợi việc sử dụng, tiếp cận, xử lý lƣu trữ liệu XML không cần đến hệ quản trị CSDL) Chính vậy, việc xây dựng phát triển ứng dụng với liệu XML giữ vai trò quan trọng Việc khai thác phƣơng pháp tiếp cận, lƣu trữ, xử lý tốt liệu XML mang lại nhiều lợi ích cho hệ thống thơng tin bối cảnh ngành Công nghệ Thông tin giai đoạn Mơ hình tích hợp nhiều hệ quản trị CSDL quan hệ khác hoạt động hệ thống ngày trở lên phổ biến Việc chuyển đổi qua lại CSDL quan hệ thơng qua XML trích xuất liệu theo yêu cầu ngƣời sử dụng dƣới dạng XML giữ vai trò quan trọng hệ thống Đề tài “Tích hợp CSDL quan hệ XML” gồm nội dung nghiên cứu với bố cục nhƣ sau: CHƢƠNG TỔNG QUAN VỀ CSDL VÀ XML Nghiên cứu lý thuyết CSDL quan hệ; phân tích, đặc tả, tiếp cận xử lý liệu XML CHƢƠNG TÍCH HỢP CSDL VÀ XML Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn Nghiên cứu mối quan hệ CSDL quan hệ với XML; thuật toán chuyển đổi CSDL quan hệ liệu XML CHƢƠNG ỨNG DỤNG TÍCH HỢP CSDL VÀ XML Cài đặt thuật toán, phƣơng pháp xử lý liệu XML sở chƣơng chƣơng trình bày; cài đặt ứng dụng quản lý điểm (trên môi trƣờng Windows Form Asp.Net), Website tin tức (trên môi trƣờng Asp.Net) với liệu XML số hệ quản trị CSDL phổ biến nhƣ Sql Server, MySql, MS Access CHƢƠNG TỔNG QUAN VỀ CSDL VÀ XML 1.1 CSDL quan hệ 1.1.1 Khái niệm CSDL hệ quản trị CSDL a) Cơ sở liệu (CSDL) Cơ sở liệu đƣợc xác định nhƣ sƣu tập liệu có liên quan logic với nhau; đƣợc tổ chức, xếp theo cách đƣợc hệ ứng dụng đơn vị/cơ quan cụ thể sử dụng[5] b) Hệ quản trị CSDL (DBMS) Hệ quản trị CSDL hệ thống bao gồm nhiều phần mềm cho phép mô tả, lƣu giữ, thao tác liệu CSDL Nó đảm bảo tính an tồn, bí mật liệu mơi trƣờng nhiều ngƣời sử dụng 1.1.2 Kiến trúc CSDL quan hệ Một sở liệu quan hệ tập nhiều quan hệ, quan hệ bảng hai chiều bao gồm cột hàng (gọi bảng liệu hay quan hệ) Bảng liệu Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn hình thức thể cụ thể kiểu thực thể xây dựng sở liệu, bảng liệu đƣợc sử dụng để lƣu liệu thực thể lớp thực thể a) Khái niệm miền giá trị Miền giá trị bảng quan hệ miền xác định giá trị thuộc tính quan hệ b) Khung nhìn Khung nhìn bảng tạm thời, có cấu trúc nhƣ bảng, khung nhìn khơng lƣu trữ liệu mà đƣợc tạo sử dụng, khung nhìn đối tƣợng thuộc CSDL 1.1.3 Ràng buộc toàn vẹn CSDL quan hệ Ràng buộc toàn vẹn kiểm tra vi phạm ràng buộc toàn vẹn vấn đề quan trọng trình phân tích, thiết kế khai thác hệ thống sở liệu a) Định nghĩa Ràng buộc toàn vẹn điều kiện bất biến không đƣợc vi phạm sở liệu b) Các yếu tố ràng buộc tồn vẹn Tính ràng buộc tồn vẹn liệu đƣợc biểu diễn thông qua phụ thuộc hàm cụ thể dựa ràng buộc khóa c) Chuẩn hóa CSDL quan hệ Chuẩn hóa CSDL có nghĩa phải biến đổi, đƣa lƣợc đồ quan hệ dạng chuẩn: 1NF, 2NF, 3NF, BCNF 1.2 XML (eXtensible Markup Language) XLM (viết tắt từ tiếng Anh eXtensible Markup Language, Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn “Ngôn ngữ đánh dấu mở rộng”) ngôn ngữ đánh dấu với mục đích chung cho W3C đề nghị để tạo ngôn ngữ đánh dấu khác Đây tập đơn giản SGML, có khả mơ tả nhiều loại liệu khác Mục đích XML đơn giản hóa việc chia sẻ liệu hệ thống khác nhau, đặc biệt hệ thống đƣợc kết nối với Internet Các ngôn ngữ dựa XML (chẳng hạn nhƣ: RDF, RSS, MathML, XHTML, SVG, GML cXML) đƣợc định nghĩa theo cách thơng thƣờng, cho phép chƣơng trình sửa đổi kiểm tra hợp lệ ngôn ngữ mà khơng cần có hiểu biết trƣớc hình thức chúng 1.2.1 Các thành phần XML a) Định dạng liệu ký tự b) Các khai báo thẻ XML c) Phần thích d) Chỉ thị xử lý e) Thẻ phần tử f) Thuộc tính g) Khơng gian tên gọi 1.2.2 Đặc tả cấu trúc liệu XML Một tài liệu XML đƣợc chia thành thành phần chính, thành phần có quy định khác - Phần khởi đầu bao gồm khai báo nhƣ: phiên sử dụng XML, cách thức mã hóa liệu, thị xử lý, định nghĩa kiểu tƣ liệu cho tài liệu XML, thích, khoảng trắng,… - Phần thân tài liệu chứa nội dung liệu bao gồm hay nhiều thành phần, tối thiểu phải có thành phần, Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn thành phần bao gồm phần tử Mỗi phần tử bao gồm cặp thẻ gồm thẻ bắt đầu thẻ kết thúc Phần tử tài liệu đƣợc coi phần tử gốc Tất tài liệu XML đƣợc gọi hợp khn dạng có chứa phần tử gốc Phần tử gốc chứa tất phần tử cặp thẻ khác Một tài liệu XML đƣợc coi tài liệu hợp khuôn dạng tuân theo quy tắc sau: - Các khai báo XML phải đƣợc đặt dòng tài liệu Khai báo thị xử lý XML không bắt buộc, nhiên sử dụng phải đặt chúng dịng tài liệu Nếu không theo yêu cầu tài liệu XML đƣợc xem khơng hợp lệ - Một tài liệu XML có phần tử gốc, phần tử khác có phải phần tử gốc - Mọi phần tử XML khác rỗng phải bao gồm đầy đủ thẻ đóng thẻ mở Trong tài liệu XML hợp khn dạng, thẻ mở (ngoại trừ thẻ rỗng) phải có thẻ đóng tƣơng ứng Nếu phân tích XML phát phần tử bị thiếu thẻ đóng hay thẻ mở q trình phân tích, biên dịch tài liệu bị kết thúc - Đóng phần tử rỗng với chuỗi /> Phần tử rỗng phần tử có thẻ Dấu kết phần tử rỗng phải /> không tài liệu đƣợc coi không hợp khuôn dạng - Mọi phần tử tài liệu XML khác phần tử gốc phải nằm cặp thẻ gốc - Các phần tử lồng phải có thẻ đóng, mở tƣơng ứng vị trí.Chỉ nên sử dụng tham chiếu thực thể đƣợc định nghĩa trƣớc XML b) Đặc tả cấu trúc XML với DTD (Document Type Definition) DTD tập hợp khai báo để mô tả ràng buộc tài liệu Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn đƣợc viết ngôn ngữ đánh dấu nhƣ SGML, XML, HTML DTD đƣợc khai báo bên tài liệu XML tập tin bên Với DTD, nhóm xây dựng hệ thống thơng tin thỏa thuận sử dụng DTD tiêu chuẩn cho việc trao đổi liệu Các ứng dụng với XML sử dụng DTD tiêu chuẩn để xác định kiểu liệu đƣợc nhận từ bên ngồi vào hợp lệ Chúng ta sử dụng DTD để kiểm tra liệu XML hệ thống c) Đặc tả cấu trúc XML với Schemma XML Schema đƣợc phát triển tảng DTD trội số đặc điểm: - Schema dạng tài liệu theo chuẩn XML, để mơ tả cấu trúc liệu ngƣời dùng schema không cần phải làm quen với cấu trúc - Schema mở rộng, ngƣời dùng định nghĩa thêm kiểu liệu riêng từ kiểu liệu chuẩn - Schema hỗ trợ namespace - Schema hỗ trợ nhiều kiểu liệu, định phạm vi giá trị liệu, dễ dàng khai báo, tìm kiếm kiểm tra tính đắn liệu Trong Schema liệu đƣợc chia thành hai kiểu: kiểu liệu có sẵn kiểu liệu ngƣời dùng tự định nghĩa: XML Datatypes User-devired Built-in datatypes datatypes Hình 1.3 Các kiểu liệu Schema (Schema Datatypes) Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 1.2.3 Phân tích tài liệu XML theo mơ hình DOM a) Mơ hình đối tượng tài liệu XML Để xử lý tài liệu XML, W3C định nghĩa tài liệu theo mơ hình hƣớng đối tƣợng DOM Theo mơ hình tài liệu XML đƣợc tổ chức theo cấu trúc hình bao gồm nút đối tƣợng, nội dung nút (note), chứa phần tử (element), liệu (text), thuộc tính (attribute),… nút khác Mơ hình DOM đƣợc W3C định nghĩa theo nhiều mức khác nhau, cụ thể mức sau: Mức 0: đặc tả XML khơng thức đƣợc áp dụng cho trình duyệt trƣớc nhƣ Nestcape Navigator 3.0 IE 3.0 Mức 1: Tập trung vào kết hợp tài liệu XML HTML Mức 2: Hỗ trợ không gian tên gọi XML, khung nhìn có lọc (filtered views) kiện DOM Mức 3: Nâng cao khả DOM với việc cho phép nạp, xử lý, lƣu lại mơ hình cho nội dung tài liệu b) Phân tích tài liệu XML theo mơ hình DOM Với mơ hình DOM, tài liệu XML đƣợc phân tích: tạo, duyệt, thêm, loại bỏ, thay đổi phần tử thông qua ngôn ngữ nhƣ: Java, JavaScript, Visual Stdio.NET, C/C++,… Cho dù sử dụng ngôn ngữ để phân tích ta phải sử dụng tới phƣơng thức mà DOM cung cấp đƣợc liệt kê bảng dƣới đây: Phƣơng thức Ý nghĩa documentElement Lấy nút gốc tài liệu DOM parentNode Lấy nút cha nút Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn firstChild Lấy nút previousChild Lấy nút trƣớc nextChild Lấy nút lastChild Lấy nút cuối firstSibling Lấy nút cấp nextSibling Lấy nút cấp previousSibling Lấy nút cấp trƣớc lastSibling Lấy nút cấp cuối getElementByTagName Lấy danh sách nút Item(i) Truy cập nút thứ i danh sách childeNodes Trả danh sách nút tài liệu docType Trả kiểu nút gốc Length Trả nút danh sách nút nodeName Trả tên nút noteValue Trả giá trị nút noteType Xác định kiểu liệu nút createElement() Khởi tạo thành phần createTextNode() Khởi tạo liệu text cho nút Bảng 1.4: Các phương thức mô hình DOM 1.2.4 Tiếp cận, lƣu trữ xử lý liệu XML XML có hai chức : Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 10 ...ĐẠI HỌC THÁI NGUYÊN TRƢỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THƠNG ĐỖ TRUNG THÀNH TÍCH HỢP CSDL QUAN HỆ XML 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... lý liệu XML CHƢƠNG TÍCH HỢP CSDL VÀ XML Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn Nghiên cứu mối quan hệ CSDL quan hệ với XML; thuật toán chuyển đổi CSDL quan hệ liệu XML CHƢƠNG... giữ vai trò quan trọng hệ thống Đề tài ? ?Tích hợp CSDL quan hệ XML? ?? gồm nội dung nghiên cứu với bố cục nhƣ sau: CHƢƠNG TỔNG QUAN VỀ CSDL VÀ XML Nghiên cứu lý thuyết CSDL quan hệ; phân tích, đặc