Chuyển đổi dữ liệu giữa XML và cơ sở dữ liệu quan hệ

13 322 0
Chuyển đổi dữ liệu giữa XML và cơ sở dữ liệu quan hệ

Đ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ăQUỌCăGIAăHÀăN I TR NGă I H CăCỌNGăNGH TR NăPH CHUY Nă VÀăC ăS ID D NGăNHUNG LI U GI A XML LI U QUAN H GVHD : PGS.TS OÀN V NăBANă HÀăN I, 20 DANH M C T VI T T T M T S THU T NG M đ u Ch ngăI: KHÁIăNI MăXMLăVÀăMỌăHÌNHăD LI U QUAN H 1.1 TÀIăLI U XML 1.1.1 Gi i thi u XML ngôn ng đ nh d ng 1.1.2 Trình so n th o XML (XML Editors) trình t XML 12 1.1.3 B phân tích XML B ki m tra XML (XML Validator) 13 1.1.4 CSS XSL 13 1.1.5 Xây d ng tài li u XML h p khuôn d ng Error! Bookmark not defined 1.1.6 nh ngh a ki u tài li u (DTD) Error! Bookmark not defined 1.1.7 Gi i thi u v Xpath Error! Bookmark not defined 1.1.8 Mô hình đ i t ng d li u DOM Error! Bookmark not defined 1.1.9 XML c s d li u Error! Bookmark not defined 1.2 MỌăHÌNHăD LI U QUAN H Error! Bookmark not defined 1.2.1 Các khái ni m c b n [3][4][5] Error! Bookmark not defined 1.2.2 Các phép toán quan h [4][5] Error! Bookmark not defined 1.3 K T LU N Error! Bookmark not defined Ch ngăII:THU TăTOÁNăCHUY Nă I D LI U GI AăTÀIăLI U XML VÀăCSDLăQUANăH Error! Bookmark not defined 2.1 CHUY Nă I XML SANG CSDL QUAN H Error! Bookmark not defined 2.1.1 n gi n hoá đ c t DTD Error! Bookmark not defined 2.1.2 C s c a thu t toán chuy n đ i l c đ XML sang l c đ CSDL quan h Error! Bookmark not defined 2.1.3 Thu t toán g p c s (Basis Inlining) Error! Bookmark not defined 2.1.4 Thu t toán g p chia s (Shared Inlining) Error! Bookmark not defined 2.1.5 Thu t toán g p c i ti n Error! Bookmark not defined 2.1.5.1 n gi n hoá DTD Error! Bookmark not defined 2.1.5.2 T o l p gi n l c đ th DTD Error! Bookmark not defined 2.1.5.3 Sinh l c đ quan h Error! Bookmark not defined 2.1.6 Thu t toán Xinsert-Ánh x d a h ng ti o c n DOM Error! Bookmark not defined 2.1.7 Thu t toán CPI (Constraint-Preserving Inlining)Error! Bookmark not defined 2.1.7.1 Ánh x DTD sang l c đ quan h Error! Bookmark not defined 2.1.7.2 Các ràng bu c ng ngh a DTD Error! Bookmark not defined 2.1.7.3 Phát hi n b o toàn ràng bu c ng ngh a Error! Bookmark not defined 2.2 CHUY Nă I CSDL QUAN H SANG XMLError! Bookmark not defined 2.2.1 Chuy n đ i ph ng (Flat Translation) Error! Bookmark not defined 2.2.2 Chuy n đ i l ng(Nesting base Traslation) Error! Bookmark not defined 2.2.3 Thu t toán CoT (Chuy n đ i s d ng ph thu c bao hàm) Error! Bookmark not defined 2.2.3.1 M t khoá ngo i gi a hai b ng Error! Bookmark not defined 2.2.3.2 Hai khoá ngo i gi a ba b ng Error! Bookmark not defined 2.2.3.3 L c đ quan h t ng quát Error! Bookmark not defined Ch ngăIII: CH NGăTRÌNHă NG D NG Error! Bookmark not defined 3.1 THU TăTOÁNăG P C I TI NăVÀăXINSERT Error! Bookmark not defined 3.1.1 Mô t toán Error! Bookmark not defined 3.1.2 Ch ng trình DEMO Error! Bookmark not defined 3.1.3 K T LU N Error! Bookmark not defined PH N K T LU N Error! Bookmark not defined PH L C Error! Bookmark not defined TÀIăLI U THAM KH O Error! Bookmark not defined 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 Error! Bookmark not defined DANH M C T VI T T T CSDL C s d li u RDB Relational Database XML eXtensible Markup language HTML HyperText Markup Language SGML Standard Generalized Markup Language W3C World Wide Web Consortium DTD Document Type Definition DOM Document Oject Model SAX Simple API for XML CSS Cascading Style Sheets XSl Extensible Style Sheet Language API Application Progaramming Interfaces DDL Data definition Language DML Data Manipulation Language CPI Constraint- Preserving Inlining ID Inclusion Dependencies FD Function Dependency EGD Equality ậGenerating TGD Tuple-generating Dependencies FT Flat translation NeT Nesting-base Translation CoT Constraint Translation IND Inclusion Defendencies M TS THU T NG Basic Inlining G pc s Share Inlining G p chia s New Inlining G p c i ti n Hybrid Inlining G p lai ghép DTD MAP Schema L XML Document Tài li u XML Cardinality Operator Toán t l c l XML Processor Trình phân tích XML Element nodes Nút phân t Integrity constraint R ng bu c toàn v n Set-value attribute Thu c tính có giá tr t p h p Relational keys Khoá quan h Relational recurive processing Ti n trình đ quy quan h Element graph c đ ánh x DTD ng th ph n t Inlinable tree Cây có th g p Singteton constraint Ràng bu c đ n Equality- generating dependencies Ph thu c sinh đ ng nh t Child constraint Ràng bu c Parent constraint Ràng bu c cha M ăđ u H u h t d li u th ng th c l u tr cung c p cho ng d li u t c d trì báo v n ng lai Các h th ng i s d ng cách truy c p d li u hi u qu đáng tin c y m t t m nh m c a th c l u tr li u quan h đ h qu n tr d ph ng m i đ ch c Tuy nhiên, t c đ phát tri n ng ma n t nhu c u chuy n nh n d li u t khách hàng c ng nh t ch c khác qua Internet đ ng ngh a v i vi c m t s d li u c n đ c gi i thoát kh i mô hình gi i h n XML[1][2][10] n i lên nh v t tr i đ mô t trao đ i d m t tiêu chu n li u, v y c ch đ chuy n đ i d li u đu c l u tr h qu n tr c s d li u quan h sang XML ng c l i l nh v c quan tr ng c n nghiên c u S thành công c a b t k công c k t n i gi a XML h qu n tr c s d li u quan h tr c ti p hay thông qua ngôn ng th c p h n đ u ph thu c n ng n vào ch t l d li u đ ng gi n đ đ nh rõ c u trúc c a c chuy n đ i M t gi n đ m h ch a hoàn thi n có th d n t i vi c k t n i thi u xác ho c m t d li u Các c ch suy lu n gi n đ quan h t gi n đ không quan h đ u đ minh t t b ng tài li u nh ng ph c ch ng ng th c đ suy lu n m t gi n đ XML khó hi u h n r t nhi u Cho t i hi n nay, vi c ch n l a m t d ng th c đ mô t gi n đ XML h t s c khó kh n G n đây, gi n đ XML n i lên nh m t tiêu chu n ph bi n nh ng không th c đ đ nh d ng gi n đ XML ó m t tiêu chu n có u th l n toàn di n giúp h tr ki u đánh máy đ c cài đ t s n phong phú cho phép t o ki u ph c t p h n d a nh ng ki u đ c cài đ t s n c ng nh nhi u tính n ng h u d ng khác Lu n v n trình bày ph ng pháp chuy n đ i d li u gi a XML sang c s d li u quan h ng c l i d a l c đ XML l c đ quan h C th , lu n v n sâu nghiên c u m t s thu t toán chuy n đ ic b nh ng c u trúc m t thu t toán chuy n đ i h ng d li u ng th i, d a thu t toán c b n đó, lu n v n nghiên c u vi c chuy n đ i có th đ m b o đ c ràng bu c, gi m d th a d li u, có th khai thác t i đa kh n ng, l i ích c a h Lu năv năđ Ch cătrìnhăbƠyătrongă3ăch ng ti p c n ng ng I: trình bày m t s khái ni m c b n v XML nh đ nh ngh a DTD, l c đ XML, trình phân tích tài li u, mô hình DOM … mô hình CSDL quan h nh khái ni m v quan h , thu c tính, b , khoá … Ch ngăII: Gi i thi u m t s thu t toán chuy n đ i d li u gi a XML mô hình quan h Các thu t toán c b n nh g p c s , g p chia s , g p c i ti n gi i quy t s ph c t p c a đ c t DTD, s xung đ t gi a ki n trúc có th b c t nhi n c u mô hình d li u XML b n ch t hai m c c a mô hình quan h Ba thu t toán CPI, NeT CoT không ch th c hi n t t vi c chuy n đ i c u trúc c a l v m t ng ngh a c a l thu t toán chuy n đ i l c đ g c mà b o toàn c đ trình chuy n đ i Ngoài c đ , lu n v n gi i thi u m t thu t toán chuy n đ i d li u Xinsert, thu t toán có kh n ng chuy n đ i d li u c a tài li u XML sang d li u quan h theo h Ch ng ti p c n DOM ngă III: Nghiên c u cài đ t ng d ng minh ho cho m t s thu t toán chuy n đ i d li u nh thu t toán g p c i ti n Xinsert Ch ngăI: KHÁIăNI MăXMLăVÀăMỌăHÌNHăD ăLI UăQUANăH 1.1 TÀIăLI UăXML 1.1.1 Gi iăthi uăXMLăvƠăngônăng ăđ nhăd ng Nh t t c đ u bi t, XML vi t t t cho ch eXtensible Markup Language XML m t ngôn ng đánh d u t ng đ i m i đ c s d ng đ đ nh ngh a c u trúc d li u m t tài liêu thông qua th [1][2] Ngôn ng đ nh d ng (Markup Language) ngôn ng đ c dùng đ trình bày d li u m t tài li u Ngôn ng đ nh d ng mà m i ng i quen thu c ngày ngôn ng HTML HTML cho phép b n t o n i dung trang Web t đ n gi n Víăd 1.1 ng đ i L i chào Chào t t c b n h c sinh thân yêu! K t qu trang web trình t đ c hi n th nh sau: HTML th c hi n đ nh d ng b ng th (tags) nh , , … Nh ng th ch cho trình t (browser) cách hi n th n i dung tài li u Gi ng nh HTML, XML dùng th đ khai báo c u trúc d li u file XML i m khác bi t gi a HTML XML th HTML ch a ý ngh a dùng đ trình bày d li u th c a XML ch a ý ngh a dùng đ đ nh ngh a c u trúc d li u Ví d m t tài li u đ t hàng (order) XML d i đây: Víăd 1.2 2002-3-27 Peter Collingwood 1 5 4 3 Tài li u ch ch a d li u, không đ c p đ n cách trình bày i u có ngh a m t b phân tích XML (XML parser) không c n ph i hi u ý ngh a c a th Nó ch c n tìm th xác đ nh r ng m t tài li u XML h p l Vì trình t không c n ph i hi u ý ngh a c a th , nên ta có th dùng b t k tên đ đ t cho th c ng đ c, tên đ t cho th b t đ u b ng ký t g ch chân (_), ký t s (1,2,3…), ký t (a,A,b,B…), d u ch m (.), d u g ch n i (-), nh ng kho ng tr ng Nhìn t ng quát, m t tài li u XML b t đ u b ng th khái báo ch th x lý XML T t c ch th x lý XML b t đ u b ng Chúng ta quan sát k h n c u trúc c a m t tài li uXML Tr c h t tài li u XML đ c hình thành t ph n t (element) XML thu c tính c a ph n t Trong ví d ta th y tài li u XML g m có ph n t Order đ c g i ph n t g c c a tài li u có thu c tính OrderNo v i giá tr 1023 Bên ph n t g c Order có ch a: - Ph n t OrderDate v i giá tr là:2002-3-27 - Ph n t Customer v i giá tr là: Peter Collingwood - Hai ph n t Item, m i ph n t Item l i ch a m t ph n t ProductID m t ph n t Quantity ôi ta khai báo m t ph n t r ng tài li u XML (là ph n t có tên, nh ng không ch a m t giá tr ), ta mu n dùng nh m t ph n t tu ch n, có c ng đ c, c ng không Ví d nh ph n t r ng MiddleInitial ph n t Customer d Víăd 1.3 Stephen King i đây: Có m t cách khác đ bi u di n ph n t r ng b th đóng thêm m t d u "/" cu i th m Ta có th vi t l i ví d customer nh sau: Víăd 1.4 Stephen King D nhiên ph n t r ng c ng có th có thu c tính nh ph n t PhoneNumber th nhì d i đây: Víăd 1.5 Stephen King 9847 2635 1.1.2 Trìnhăso năth oăXML (XMLăEditors)ăvƠătrìnhăduy tăXMLă t o tài li u XML ta có th s d ng trình so n th o đ n gi n nh : Notepad, wordpad … Có r t nhi u trình so n th o đ c bi t đ c dùng ph c v cho hi u ch nh n i dung file d li u XML n gi n d dùng nh t trình so n th o XML notepad c a Microsoft Các trình so n th o chuyên nghi p h n nh XML Writer Nh ng ph n m m trình t n hình h tr XML (ch ki m tra khuôn d ng XML h p l cho phép k t h p CSS, XSL) bao g m: Internet Explorer(IE), Netscape Navigator, Jumpo 1.1.3 B ăphơnătíchăXMLăvƠăB ăki mătraăXML (XML Validator) B phân tích gói ph n m m đ c s d ng chúng nh m t ph n m m kèm theo c a ng d ng có ch a th vi n cung c p hàm, cho phép phân tích n i dung trích xu t d li u c a XML đ n gi n D i trình phân tích th ng dùng: XML cho Java (XML4J), Microsoft XML Parser, Python XML Parse B ki m tra gói ph n m m cho phép ki m tra m t s chu n XML M t s b ki m tra th ng dùng, n u s d ng b phân tích XML4J c a IBM, b n có th dùng đ i t ng DOM Writer đ làm b ki m tra, có b ki m tra nh XML Writer, Tidy, … 1.1.4 CSSăvƠăXSL CSS XSL [8] b ng đ nh ki u (Style sheet) CSS thích h p đ đ nh d ng tài li u h ng v HTML, ta có th thay đ i font ch , c ch , màu s c, đ t hình nh yêu c u k t h p đ nh d ng c a CSS v i d li u XML B n thân XML ch đ nh ngh a c u trúc l u tr d li u, kh n ng t ... KHÁIăNI M XML VÀăMỌăHÌNHăD LI U QUAN H 1.1 TÀIăLI U XML 1.1.1 Gi i thi u XML ngôn ng đ nh d ng 1.1.2 Trình so n th o XML (XML Editors) trình t XML 12 1.1.3 B phân tích XML B... ngăI: KHÁIăNI M XML VÀăMỌăHÌNHăD ăLI U QUAN H 1.1 TÀIăLI U XML 1.1.1 Gi iăthi u XML vƠăngônăng ăđ nhăd ng Nh t t c đ u bi t, XML vi t t t cho ch eXtensible Markup Language XML m t ngôn ng đánh... ng quát, m t tài li u XML b t đ u b ng th khái báo ch th x lý XML T t c ch th x lý XML b t đ u b ng Chúng ta quan sát k h n c u trúc

Ngày đăng: 25/01/2017, 17:20

Từ khóa liên quan

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

  • Đang cập nhật ...

Tài liệu liên quan