Chuyển đổi XML thành dữ liệu quan hệ pot

6 159 0
Chuyển đổi XML thành dữ liệu quan hệ pot

Đang tải... (xem toàn văn)

Thông tin tài liệu

Chuyển đổi XML thành dữ liệu quan hệ Quản trị mạng – Trong hướng dẫn này chúng tôi sẽ giới thiệu cho các bạn một số phương pháp chuyển đổi các tài liệu XML thành các hàng trong các bảng quan hệ, công việc vẫn được biết đến như việc băm nhỏ hay phân tách các tài liệu XML. Phương pháp chuyển đổi các tài liệu XML thành các hàng trong các bảng dữ liệu quan hệ hay được biết đến như vi ệc shred (băm nhỏ) hay decompose (phân tách) các tài liệu XML. Một trong những lý do chính cho việc shred là các ứng dụng SQL đang tồn tại vẫn cần truy cập vào dữ liệu dưới định dạng quan hệ. Cho ví dụ, các ứng dụng kế thừa, các ứng dụng doanh nghiệp được đóng gói hoặc phần mềm báo cáo không phải lúc nào cũng làm việc với XML. Chính vì vậy đôi khi bạn sẽ thấy khá hữu dụng trong việc băm nhỏ (shred) tất cả hoặc một số giá trị dữ liệu của một tài liệu XML được chỉ định vào các cột và các hàng nằm trong các bảng dữ liệu quan hệ. Hướng dẫn này chúng tôi sẽ giới thiệu cho các bạn về:  Những ưu điểm và nhược điểm của việc băm nhỏ và các phương pháp băm nhỏ khác.  Cách băm nhỏ dữ liệu XML thành các bảng quan hệ bằng lệnh INSERT có chứa hàm XMLTABLE.  Cách sử dụng các chú thích XML Schema để bản đồ và băm nhỏ các tài liệu XML thành các bảng quan hệ. Ưu điểm và nhược điểm của việc băm nhỏ Khái niệm của việc băm nhỏ được minh chứng trong hình 1. Trong ví dụ này, các tài liệu XML có các thông tin về customer name, address, và phone được bản đồ hóa thành hai bảng quan hệ. Các tài liệu có thể chứa nhiều thành phần phone vì mối quan hệ giữa khách hàng và số điện thoại của họ là mối quan hệ 1-n. Do đó, các số điện thoại sẽ được băm nhỏ vào một bảng riêng. Mỗi một thành phần lặp, chẳng hạn như phone, sẽ dẫn đến một bảng bổ sung trong giản đồ mục tiêu quan hệ. Giả dụ các thông tin khách hàng có thể chứa nhi ều địa chỉ email, nhiều tài khoản, danh sách các đơn đặt hàng gần đây, nhiều sản phẩm trong mỗi đơn hàng và các mục lặp lại khác. Khi đó số các bảng được yêu cầu trong giản đồ mục tiêu quan hệ có thể tăng rất nhanh. Tuy nhiên việc băm nhỏ XML thành một số lớn các bảng có thể dẫn đến sự phức tạp của các đối tượng logic doanh nghiệp và làm cho sự phát triển ứng dụng trở nên khó khăn hay r ất dễ gây lỗi. Việc truy vấn dữ liệu đã được băm nhỏ hoặc việc lắp ráp lại (reassembling) các tài liệu gốc có thể cần đến nhiều mối ghép (join) phức tạp. Hình 1: Việc băm nhỏ (shred) một tài liệu XML Phụ thuộc vào sự phức tạp và khả năng thay đổi, mục đích của các tài liệu XML, việc băm nhỏ (shred) có hoặc không thể là một tùy chọn bắt buộc. Bảng 1 tóm tắt các ưu điểm và nhược điểm của việc băm nhỏ (shred) dữ liệu XML thành các bảng quan hệ. Là lựa chọn thích hợp khi… Là lựa chọn không thích hợp khi…  Dữ liệu XML đư ợc chỉ định đang cung cấp cho một cơ sở dữ liệu quan hệ đang tồn tại.  Dữ liệu XML của bạn phức tạp, xếp chồng và khó cho việc bản đồ hóa thành một giản đồ quan hệ.  Các tài li ệu XML không thể hiện được các đối tượng logic doanh nghiệp cần được duy trì.  Việc bản đồ hóa định dạng XML của bạn thành giản đồ quan hệ dẫn đến một số lượng lớn các bảng.  Mục đích chính của bạn là cho phép các ứng dụng quan hệ đang tồn tại có thể truy cập vào d ữ liệu XML  XML Schema của bạn hay thay đổi  Bạn ưng thuận với giản đồ quan hệ của mình và thích sử dụng nó  Mục tiêu của bạn là quản lý các tài liệu XML như các đối tượng nếu có thể. doanh nghiệp nguyên vẹn.  Cấu trúc của dữ liệu XML của bạn dễ dàng được bản đồ hóa thành các bảng dữ liệu quan hệ.  Bạn thư ờng cần xây dựng lại các tài liệu được băm nhỏ hoặc một phần trong chúng.  Định dạng XML của bạn tương đối ổn định và ít thay đổi.  Sử dụng d ữ liệu XML trong một cơ sở dữ liệu với tốc độ cao cho ứng dụng của bạn.  Bạn ít khi cần xây dựng lại các tài liệu được băm nhỏ.  Việc truy vấn hoặc nâng cấp dữ liệu với SQL quan trọng hơn chèn. Bảng 1. Khi việc băm nhỏ là hay không là một lựa chọn thích hợp Trong nhiều kịch bản ứng dụng XML, cấu trúc và cách sử dụng dữ liệu XML không thích ứng với việc băm nhỏ. Nguyên nhân xảy ra điều này là do DB2 hỗ trợ các cột XML có thể cho phép bạn đánh chỉ số và truy vấn dữ liệu m à không cần đến quá trình chuyển đổi. Đôi khi bạn sẽ thấy các yêu cầu ứng dụng của mình có thể đáp ứng tốt nhất với partial shredding hoặc hybrid XML storage. Ở đây:  Partial shredding có nghĩa rằng chỉ một tập nhỏ các thành phần hoặc các thuộc tính từ mỗi một tài liệu XML đi vào được băm nhỏ thành các bảng quan hệ. Điều này khá hữu dụng nếu ứng dụng quan hệ không yêu cầu tất cả giá trị dữ liệu từ mỗi tài liệu XML. Trong các trường hợp, nơi việc băm nhỏ toàn bộ mỗi một tài liệu diễn ra khó khăn và yêu cầu một giản đồ quan hệ phức tạp, partial shredding có thể đơn giản hóa việc bản đồ hóa sang giản đồ quan hệ một cách đáng kể.  Hybrid XML storage có nghĩa trong lúc chèn một tài liệu XML vào một cột XML, thành phần được chọn hoặc các giá trị của thuộc tính được trích rút và thành phần dự trữ được lưu trong các cột quan hệ. N ếu bạn muốn băm nhỏ các tài liệu XML, toàn bộ hoặc một phần, DB2 cung cấp cho bạn một tập các tính năng phong phú để thực hiện một số hoặc tất cả những vấn đề dưới đây:  Thực hiện các phép biến đổi giá trị dữ liệu trước khi chèn vào các cột quan hệ.  Băm nhỏ cùng một giá trị thuộc tính hoặc thành phần vào nhiều cột của các bảng giống hay khác nhau.  Băm nhỏ nhiều thành phần khác hay thuộc tính khác nhau vào cùng một cột trong một bảng.  Chỉ định các điều kiện chi phối cho các thành phần nào đó được hay không được băm nhỏ. Cho ví dụ, băm nhỏ địa chỉ của một tài liệu khách hàng chỉ khi country là Canada.  Hợp lệ hóa các tài liệu XML với một XML Schema trong suốt quá trình băm nhỏ.  Lưu tài liệu XML đầy đủ cùng với dữ liệu được băm. DB2 9 cho z/OS và DB2 9.x cho Linux, UNIX, và Windows hỗ trợ hai ph ương pháp băm nhỏ:  Các câu lệnh INSERT của SQL sử dụng hàm XMLTABLE. Hàm này sẽ điều hướng vào một tài liệu đầu vào và sinh ra một hoặc nhiều h àng quan hệ dùng để chèn vào bảng quan hệ.  Phân tách với một XML Schema được chú thích. Do XML Schema định nghĩa cấu trúc của các tài liệu XML nên các chú thích có thể được bổ sung vào giản đồ để định nghĩa cách các thành phần và thuộc tính được bản đồ hóa thành các bảng quan hệ như thế nào. Bảng 2 và bảng 3 sẽ giới thiệu về những ưu điểm và nhược điểm của phương pháp XMLTABLE và phương pháp giản đồ được chú thích. Ưu điểm của phương pháp XMLTABLE Nhược điểm của phương pháp XMLTABLE  Cho phép bạn băm nhỏ dữ liệu thậm chí không có XML Schema.  Mỗi một bảng mục tiêu mà b ạn muốn băm nhỏ vào, bạn phải cần đến một câu lệnh INSERT  Không yêu c ầu bạn hiểu ngôn ngữ XML Schema hoặc hiểu các chú thích của giản đồi cho việc phân tách.  Bạn có thể phải kết hợp nhiều câu lệnh INSERT trong một thủ tục được lưu.  Thường dễ sử dụng hơn các giản đồ có chú thích vì được dựa trên SQL và Xpath.  Bạn có thể sử dụng các hàm và các biểu thức quen thuộc của XPath, XQuery, hoặc SQL để trích rút và điều chỉnh các giá trị dữ liệu.  Thường yêu cầu đến ít khối lượng công việc trong quá trình phát triển XML Schema.  Quá trình băm nhỏ có thể cần đến dữ liệu từ nhiều nguồn quan hệ và XML nếu cần, chẳng hạn như các giá trị từ các chuỗi DB2 hoặc dữ liệu tra cứu từ các bảng quan hệ khác.  Có thể cung cấp hiệu suất tốt hơn phương pháp phân tách giản đồ chú thích.  Không có hỗ trợ giao diện người dùng cho việc thực thi các câu lệnh INSERT và các hàm XMLTABLE cần thiết. Bạn cần phải biết về XPath và SQL/XML. Bảng 2. Phương pháp XMLTABLE Ưu điểm của phương pháp Nhược điểm của phương pháp  Việc bản đồ hóa từ XML vào các bảng quan hệ có thể được định nghĩa b ằng một GUI trong IBM Data Studio Developer.  Không cho phép bạn băm nhỏ khi không có XML Schema.  Nếu bạn băm nhỏ dữ liệu XML phức tạp vào một số lượng lớn các bảng, cần ít nỗ lực trong việc viết mã hơn so với phương pháp XMLTABLE  B ạn có thể phải tự copy các chú thích khi bắt đầu sử dụng một phiên bản mới của XML Schema.  Cung cấp số lượng lớn những thông tin chuẩn đoán chi tiết nếu một số tài liệu bị băm nhỏ thất bại.  Mặc dù có giao diện hỗ trợ người dùng nhưng bạn vẫn cần biết ngôn ngữ XML Schema.  Việc chú thích một XML Schema có thể sẽ phức tạp nếu một giản đồ bản thân nó là phức tạp. Bảng 3: Phương pháp phân tách giản đồ chú thích . Chuyển đổi XML thành dữ liệu quan hệ Quản trị mạng – Trong hướng dẫn này chúng tôi sẽ giới thiệu cho các bạn một số phương pháp chuyển đổi các tài liệu XML thành các hàng trong các bảng quan. các bảng quan hệ, công việc vẫn được biết đến như việc băm nhỏ hay phân tách các tài liệu XML. Phương pháp chuyển đổi các tài liệu XML thành các hàng trong các bảng dữ liệu quan hệ hay được. các bảng quan hệ. Là lựa chọn thích hợp khi… Là lựa chọn không thích hợp khi…  Dữ liệu XML đư ợc chỉ định đang cung cấp cho một cơ sở dữ liệu quan hệ đang tồn tại.  Dữ liệu XML của

Ngày đăng: 14/08/2014, 04:21

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

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

Tài liệu liên quan