1. Trang chủ
  2. » Công Nghệ Thông Tin

Hãy khởi đầu nhanh chóng với DB2 9 pureXML

167 124 0

Đ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

Thông tin cơ bản

Định dạng
Số trang 167
Dung lượng 1,73 MB

Nội dung

Hãy khởi đầu nhanh chóng với DB2 9 pureXML, Phần 1: XML là lõi Cynthia M. Saracco, Kiến trúc giải pháp cao cấp, IBM Tóm tắt: Bản phát hành DB2® 9 của IBM® mô tả một kiến trúc quan trọng là Ideparture khác với các phiên bản trước. Đây là lần đầu tiên kể từ khi ra mắt, DB2 cho Linux®, UNIX®, và Windows® đang cung cấp một ngôn ngữ truy vấn mới, công nghệ lưu trữ mới, công nghệ lập chỉ mục mới và các tính năng khác để hỗ trợ cho dữ liệu XML và cấu trúc phân cấp vốn có của nó. Nhưng đừng lo lắng quá, vì tất cả các tính năng quản lý cơ sở dữ liệu truyền thống của DB2 vẫn còn nguyên, bao gồm cả sự hỗ trợ của nó cho SQL và các cấu trúc dữ liệu dạng bảng. Hãy khám phá công nghệ XML của DB2 9 và tìm hiểu lý do tại sao bây giờ IBM coi DB2 là hệ thống quản lý cơ sở dữ liệu "lai" hoặc đa-cấu trúc (DBMS). Lưu ý: Được viết lần đầu vào năm 2006, bài viết này luôn được cập nhật để theo kịp với các thay đổi sản phẩm trong phiên bản 9.5 và 9.7 của DB2. Mở đầu Quản lý các dạng dữ liệu mới thường để lộ ra nhiều thách thức mới. Nhiều nhà lãnh đạo công nghệ thông tin đã phát hiện ra đó chính là trường hợp khi nói về dữ liệu theo định dạng của Ngôn ngữ đánh dấu mở rộng (XML). Thường, các lựa chọn rõ ràng để quản lý và chia sẻ dữ liệu XML vẫn không cắt bỏ được nó. Các hệ thống tệp đang dùng tốt cho các nhiệm vụ đơn giản, nhưng lại không mở rộng tốt khi bạn cần đương đầu với một lượng lớn tài liệu. Không thể quản lý nổi các vấn đề đồng quy, khôi phục, an ninh và dễ sử dụng. Các hệ thống quản lý cơ sở dữ liệu quan hệ thương mại (DBMS) giải quyết được các vấn đề đó, nhưng lại thất bại trong các lĩnh vực khác. Chúng cung cấp hai tùy chọn thiết kế cơ sở dữ liệu cơ bản lưu trữ từng tài liệu XML nguyên vẹn như là một đối tượng Simpo PDF Merge and Split Unregistered Version - http://www.simpopdf.com lớn đơn lẻ hoặc thường "băm nhỏ" nó thành nhiều cột trên nhiều bảng. Trong nhiều tình huống, các tùy chọn này đưa vào các vấn đề hiệu năng, các thách thức quản trị, tính phức tạp truy vấn tăng lên và các vấn đề khác. Cuối cùng, các DBMS chỉ cho-XML đưa một môi trường mới hầu như chưa qua thử thách vào cơ sở hạ tầng công nghệ thông tin, làm tăng các mối quan tâm về tích hợp, các kỹ năng nhân viên và khả năng tồn tại lâu dài. Bản phát hành phiên bản 9 của DB2 cho các nền tảng Linux, Unix và Windows giới thiệu tùy chọn khác. Bản phát hành này hỗ trợ dữ liệu XML như là một kiểu lớp hạng nhất. Để làm như vậy, IBM mở rộng DB2 để bao gồm:  Các kỹ thuật lưu trữ mới để quản lý hiệu quả các cấu trúc phân cấp vốn có trong các tài liệu XML.  Công nghệ lập chỉ mục mới để tăng tốc độ các tìm kiếm trên và trong các tài liệu XML.  Sự hỗ trợ ngôn ngữ truy vấn mới (cho XQuery), một trình xây dựng (builder) truy vấn đồ họa mới (cho XQuery) và các kỹ thuật tối ưu hóa truy vấn mới.  Sự hỗ trợ mới để xác nhận hợp lệ dữ liệu XML dựa vào các lược đồ do người dùng cung cấp.  Các khả năng quản trị, bao gồm phần mở rộng cho các tiện ích cơ sở dữ liệu quan trọng.  Tích hợp với các giao diện lập trình ứng dụng phổ biến (các API).  Sự hỗ trợ của XML trong một môi trường kho dữ liệu khi có thêm sự hỗ trợ XML với tính năng phân vùng dữ liệu (DPF), phân vùng phạm vi và phân cụm nhiều chiều (MDC) trong phiên bản V9.7. Simpo PDF Merge and Split Unregistered Version - http://www.simpopdf.com Điều quan trọng cần lưu ý là sự hỗ trợ "nguyên gốc" của DB2 cho XML nằm ngoài sự hỗ trợ hiện có của nó cho các công nghệ khác, bao gồm cả SQL, các cấu trúc dữ liệu dạng bảng và các tính năng DBMS khác nhau. Kết quả là, những người dùng có thể tạo một đối tượng cơ sở dữ liệu đơn để quản lý cả hai dữ liệu SQL "truyền thống" lẫn các tài liệu XML. Hơn nữa, họ có thể viết một truy vấn đơn để tìm kiếm và tích hợp cả hai dạng dữ liệu. Bài viết này tìm hiểu các tính năng này khi chúng ta đi sâu vào nghiên cứu sự hỗ trợ XML nguyên gốc của DB2. Mặc dù vậy, trước tiên chúng ta hãy xem xét lý do tại sao việc quản lý dữ liệu XML đúng cách lại quan trọng. Các lợi ích tiềm năng Với số lượng các công ty ngày càng tăng đang chuyển sang XML để giúp họ triển khai thực hiện các kiến trúc hướng dịch vụ (SOA), trao đổi dữ liệu giữa các hệ thống và các ứng dụng khác nhau và thích ứng với các điều kiện nghiệp vụ thay đổi nhanh, nhiều nhà lãnh đạo công nghệ thông tin có hiểu biết đang tìm cách chia sẻ, tìm kiếm và quản lý có hiệu quả sự phong phú của các tài liệu và các thông báo XML mà các công ty của họ đang tạo ra. Sự hỗ trợ XML mới của DB2 được thiết kế để giúp cho các doanh nghiệp giảm thiểu thời gian và nỗ lực đã dùng để tiếp tục duy trì và sử dụng dữ liệu XML của họ. Dần dần, điều này có thể làm giảm chi phí phát triển và nâng cao tính linh hoạt nghiệp vụ. Ví dụ, bài "Sử dụng XML nguyên gốc của DB2 với PHP" (developerWorks, 10.2005) minh họa cách hỗ trợ XML mới của DB2 làm giảm tính phức tạp của thiết kế cơ sở dữ liệu và mã ứng dụng cần thiết để hỗ trợ trang web thương mại điện tử. Tương tự như vậy, bài "Quản lý XML để thu được nhiều nhất" (IBM, Simpo PDF Merge and Split Unregistered Version - http://www.simpopdf.com 11.2005) bàn về những trải nghiệm ban đầu của khách hàng bao gồm các kịch bản thử nghiệm so sánh cũng cho thấy những tiết kiệm nhân công tiềm năng và vòng đời được cải thiện. Có cái gì ở phía sau những lợi ích này? DB2 cho phép những người dùng lưu trữ các tài liệu XML nguyên vẹn với đầy đủ kiến thức của DBMS về cấu trúc bên trong của tài liệu. Điều này loại trừ hoặc giảm thiểu các nhiệm vụ quản trị và lập trình liên quan đến các lựa chọn thay thế khác. Hơn nữa, nó có thể tăng tốc độ các tìm kiếm trên và trong các tài liệu và nó cho phép các khách hàng điều chỉnh các thay đổi dễ dàng hơn theo các yêu cầu nghiệp vụ được phản ánh trong các lược đồ XML. Tổng quan về kiến trúc DB2 cho phép ứng dụng máy khách làm việc với cả hai cấu trúc dữ liệu dạng bảng và XML thông qua ngôn ngữ truy vấn lựa chọn của chúng SQL (bao gồm cả SQL với các phần mở rộng XML, thường được gọi là "SQL/XML") hoặc XQuery. Như trong Hình 1, các thành phần mức-máy trong các truy vấn hỗ trợ DB2 được quy định theo cả hai ngôn ngữ. Simpo PDF Merge and Split Unregistered Version - http://www.simpopdf.com Hình 1. Kiến trúc của bản phát hành DB2 9 mới Để quản lý có hiệu quả các kiểu dữ liệu SQL truyền thống và dữ liệu XML, DB2 có hai cơ chế lưu trữ riêng biệt. Chúng ta sẽ thảo luận về công nghệ lưu trữ pureXML® ngay. Tuy nhiên, điều quan trọng cần lưu ý là cơ chế lưu trữ cơ bản được sử dụng cho một kiểu dữ liệu cụ thể là trong suốt với ứng dụng. Nói cách khác, ứng dụng không cần quy định rõ ràng cơ chế lưu trữ nào cần sử dụng hoặc quản lý các khía cạnh vật lý của lưu trữ, chẳng hạn như chia nhỏ các phần của tài liệu XML trên nhiều trang cơ sở dữ liệu. Nó chỉ đơn giản là sử dụng các lợi ích hiệu năng thời gian chạy để lưu trữ và truy vấn dữ liệu theo một định dạng có hiệu quả với dữ liệu đích. Hãy nghiên cứu kỹ các tính năng XML của DB2 theo quan điểm người dùng. Lưu trữ hợp lý Các bộ sưu tập các tài liệu XML được lưu trữ trong các bảng DB2 có chứa một hoặc nhiều cột theo kiểu dữ liệu XML mới. Điều này cho phép các quản trị viên sử Simpo PDF Merge and Split Unregistered Version - http://www.simpopdf.com dụng các câu lệnh của ngôn ngữ định nghĩa dữ liệu (DDL) SQL quen thuộc để tạo các đối tượng cơ sở dữ liệu nhằm tiếp tục sử dụng dữ liệu XML của họ. Tuy nhiên, giao diện quen thuộc này che dấu thực tế là DB2 lưu trữ dữ liệu XML theo cách khác nhau, khi sử dụng công nghệ mới để bảo tồn cấu trúc phân cấp dữ liệu XML và hỗ trợ các tìm kiếm có hiệu quả bao trùm tất cả hoặc một phần dữ liệu XML ban đầu. Để dễ dàng tích hợp các dạng dữ liệu nghiệp vụ truyền thống với dữ liệu XML cho những người dùng, các quản trị viên DB2 có thể tạo ra các bảng có chứa các cột có cả hai kiểu dữ liệu SQL truyền thống lẫn kiểu dữ liệu XML mới. Đây là ví dụ về một bảng như vậy: Liệt kê 1. Tạo một bảng có một cột XML create table items ( id int primary key not null, brandname varchar(30), itemname varchar(30), sku int, srp decimal(7,2), comments xml Simpo PDF Merge and Split Unregistered Version - http://www.simpopdf.com ) Năm đầu tiên cột của bảng này sử dụng các kiểu dữ liệu SQL truyền thống để theo dõi thông tin về từng mặt hàng để bán, bao gồm số mã định danh ID, tên thương hiệu, tên mặt hàng, mã hàng trong kho (SKU) và giá bán lẻ đề xuất (SRP). Một cột "comments" (các ý kiến) chứa dữ liệu XML có ý kiến phản hồi của khách hàng đã chia sẻ về mặt hàng đó. Lưu ý rằng không quy định cấu trúc bên trong của dữ liệu XML khi tạo một bảng có một cột XML. Đây là do thiết kế. Các tài liệu XML là tự mô tả và cấu trúc bên trong của chúng có thể thay đổi đáng kể. Yêu cầu duy nhất của DB2 để lưu trữ dữ liệu XML là nó phải "đúng định dạng" có nghĩa là, nó phải tuân thủ các quy tắc cú pháp nhất định được quy định trong "tiêu chuẩn W3C cho XML" (xem phần "Tài nguyên"). Cách tiếp cận tự do của DB2 tạo cho người dùng sự linh hoạt đáng kể và dễ dàng lưu trữ các bộ sưu tập của các tài liệu XML có chứa các thuộc tính và cấu trúc bên trong khác nhau tùy theo phát triển các yêu cầu hoặc các tình huống nghiệp vụ ở nơi còn thiếu thông tin hoặc thông tin không phù hợp. Tuy nhiên, những người dùng muốn đảm bảo rằng dữ liệu XML tuân theo các quy tắc cấu trúc riêng của họ có thể ra lệnh cho DB2 xác nhận hợp lệ dữ liệu của họ trước khi lưu trữ. Điều này được thảo luận chi tiết hơn trong bài "Các lược đồ và xác nhận hợp lệ XML." Về cơ bản làm như vậy đòi hỏi tạo ra các lược đồ XML (đó cũng là một phần của tiêu chuẩn XML của W3C) và đăng ký các lược đồ này với DB2. (Xem phần "Tài nguyên" để biết thêm thông tin về các lược đồ XML). Vào lúc này, bạn có thể tự hỏi làm thế nào để những người dùng điền vào một bảng DB2 với dữ liệu XML. Câu trả lời này là đơn giản để làm việc này họ sử dụng một trong ba cơ chế DB2 quen thuộc. Các câu lệnh INSERT của SQL cũng Simpo PDF Merge and Split Unregistered Version - http://www.simpopdf.com như phương tiện IMPORT của DB2 đều cung cấp dữ liệu XML bên cạnh các kiểu dữ liệu khác. (IMPORT của DB2 ban hành các câu lệnh INSERT sau hậu trường). Load cũng hỗ trợ các câu lệnh chèn của XML, được thêm vào trong DB2 9.5. Nếu bạn đang tự hỏi tại sao DB2 chỉ hỗ trợ các câu lệnh chèn dữ liệu qua SQL mà không qua XQuery, thì câu trả lời đó khá đơn giản, phiên bản đầu tiên của tiêu chuẩn XQuery mới nổi tập trung vào các hoạt động đọc cơ sở dữ liệu, chứ không ghi các hoạt động. Trong trường hợp thiếu một tiêu chuẩn được chấp nhận rõ ràng, IBM đã chọn cung cấp cho người dùng của mình hai phương tiện quen thuộc để tiếp tục sử dụng dữ liệu XML mới. (Xem phần "Tài nguyên" để biết thêm thông tin về các tiêu chuẩn XQuery). Lưu trữ vật lý Do là một vấn đề thực tế, nên hầu hết ngững người dùng chẳng cần bận tâm đến kiến trúc quản lý lưu trữ vật lý mới của DB2 cho dữ liệu XML. Tuy nhiên, để giúp bạn hiểu những gì DB2 đang làm sau hậu trường, chúng ta hãy thảo luận ngắn gọn về cách tiếp cận bên trong của nó để lưu trữ dữ liệu XML. DB2 lưu trữ và thao tác dữ liệu XML theo một định dạng được phân tích cú pháp phản ánh bản chất phân cấp của tài liệu XML ban đầu. Như vậy, nó sử dụng các cây và các nút làm mô hình của mình để lưu trữ và xử lý dữ liệu XML. Nếu những người sử dụng ra lệnh cho DB2 xác nhận hợp lệ dữ liệu XML của họ dựa vào một lược đồ XML đã đăng ký trước khi lưu trữ, thì DB2 sẽ chú thích tất cả các nút trong phân cấp XML với thông tin về các kiểu lược đồ. Dựa vào định nghĩa ở trên về một bảng "items" (các mặt hàng), chúng ta hãy xem xét lại một tài liệu XML mẫu được lưu trữ trong bảng đó. Như trong Liệt kê 2 và Simpo PDF Merge and Split Unregistered Version - http://www.simpopdf.com được minh họa trong Hình 2, tài liệu XML này chứa nhiều phần tử được biểu diễn theo một hệ thống phân cấp, bao gồm một phần tử gốc Comments và một hay nhiều phần tử con Comment (ý kiến) liên quan đến một mặt hàng cụ thể. Một trình nhận dạng ý kiến được kết hợp với mỗi ý kiến, thông tin về khách hàng có thể bao gồm các phần tử con có tên và địa chỉ email của khách hàng, văn bản thông báo hay ý kiến của khách hàng và một chỉ số về liệu khách hàng có muốn hay không muốn trả lời không. Liệt kê 2. Tài liệu XML mẫu <Comments> <Comment> <CommentID>133</CommentID> <Customer> <Name>John Doe</Name> <Email>johndoe@any_isp.com</Email> </Customer> <Message>Heels on shoes wear out too quickly.</Message> Simpo PDF Merge and Split Unregistered Version - http://www.simpopdf.com <ResponseRequested>No</ResponseRequested> </Comment> . . . </Comments> Hình 2. Biểu diễn hệ thống phân cấp của tài liệu XML trong Liệt kê 2 Simpo PDF Merge and Split Unregistered Version - http://www.simpopdf.com [...]... http://www.simpopdf.com Mục lục  Mở đầu  Các lợi ích tiềm năng  Tổng quan về kiến trúc  Lưu trữ hợp lý  Lưu trữ vật lý  Lập chỉ mục  Ngôn ngữ và tối ưu hóa truy vấn  Lược đồ và xác nhận hợp lệ XML  Hỗ trợ quản trị  Các phần mở rộng của ngôn ngữ lập trình  Hỗ trợ kho dữ liệu  Tóm tắt Simpo PDF Merge and Split Unregistered Version - http://www.simpopdf.com Hãy khởi đầu nhanh chóng với DB2 9 pureXML, Phần 2:... bạn với DB2 và sử dụng tùy chọn XMLVALIDATE khi nhập khẩu dữ liệu Các bài sắp tới sẽ trình bày các chủ đề khác, như là truy vấn, cập nhật và xoá dữ liệu XML của DB2 bằng SQL, truy vấn dữ liệu XML của DB2 bằng XQuery và phát triển các ứng dụng Java và các thành phần web truy cập dữ liệu XML của DB2 Tạo các đối tượng cơ sở dữ liệu Để bắt đầu, hãy tạo một cơ sở dữ liệu Unicode duy nhất của DB2 (Với DB2. .. biến Nhưng nếu bạn chỉ mới bắt đầu với DB2 và không cần viết một ứng dụng, bạn có thể ban hành các câu lệnh INSERT tương tác (Tôi thấy sử dụng Trình soạn thảo lệnh (DB2 Command Editor) của DB2 là rất thuận tiện, mặc dù bạn cũng có thể sử dụng bộ vi xử lý dòng lệnh, nếu bạn muốn) Để sử dụng DB2 Command Editor, hãy khởi động DB2 Control Center (Trung tâm điều khiển của DB2) Từ trình đơn thả xuống Tools... tệp đầu vào của bạn Ví dụ, tệp items.del trong Liệt kê 8 bỏ qua tên của một tệp XML với Mặt hàng 3641 (bộ Áo đầm gây ấn tượng) Kết quả là, cột XML ứng với hàng này sẽ không chứa bất kỳ dữ liệu nào Tệp items.del 392 6,NatureTrail,Walking boot, 38112233,64.26, 4023,NatureTrail,Back pack,552238,34 .99 , 3641,Dress to Impress,Syutm7811421,1 49. 99, 4272,Classy,Cocktail... quản lý dữ liệu XML của bạn và cách điền dữ liệu XML vào cơ sở dữ liệu DB2 của bạn [11.03.2010: Được viết lần đầu vào năm 2006, bài viết này luôn được cập nhật để theo kịp với các thay đổi trong phiên bản 9. 5 và 9. 7 của DB2. -Người hiệu đính.] Bạn đã có thể nghe thấy tin đồn về phiên bản V9 của DB2 hệ thống quản lý cơ sở dữ liệu đầu tiên của IBM có hỗ trợ cả hai cấu trúc dữ liệu (dựa vào-SQL) dạng... trúc dữ liệu (dựa vào-SQL) dạng bảng và cấu trúc dữ liệu (dựa vào-XML) phân cấp Nếu bạn muốn tìm hiểu về sự hỗ trợ nguyên gốc mới của DB2 cho XML và muốn có khởi đầu nhanh chóng, thì bạn đã đến đúng nơi rồi Để giúp bạn nhanh chóng tăng tốc độ dựa vào các tính năng XML của DB2, bài viết này trình bày một số nhiệm vụ phổ biến, chẳng hạn như:  Tạo các đối tượng cơ sở dữ liệu để quản lý dữ liệu XML, bao... nghệ lập chỉ mục mới của DB2 Lưu trữ dữ liệu XML Với các bảng đã tạo ra, bây giờ bạn có thể điền dữ liệu vào chúng Ban hành trực tiếp các câu lệnh SQL INSERT hoặc bằng cách gọi phương tiện IMPORT của DB2, ban hành câu lệnh INSERT sau hậu trường Với phiên bản v9.5 của DB2, phương tiện LOAD cũng hỗ trợ dữ liệu XML Sử dụng các câu lệnh INSERT Với INSERT, bạn cung cấp trực tiếp cho DB2 dữ liệu XML thô Có... XML của DB2 Cynthia M Saracco, Kiến trúc giải pháp cao cấp, IBM Tóm tắt: DB2 V9 cho Linux®, UNIX® và Windows® của IBM® mô tả sự hỗ trợ mới quan trọng để lưu trữ, quản lý và truy vấn dữ liệu XML, được gọi là pureXML Bài viết này giúp bạn nhanh chóng nắm vững các tính năng XML mới này thông qua một số bài viết từng bước một giải thích cách hoàn thành các nhiệm vụ cơ bản Trong bài viết này, hãy tìm... Impress,Syutm7811421,1 49. 99, 4272,Classy,Cocktail dress ,98 1140,156 .99 , Với các tệp XML và các tệp ASCII định giới có sẵn của mình, bây giờ bạn đã sẵn sàng sử dụng phương tiện IMPORT của DB2 Câu lệnh trong Liệt kê 9 nhập khẩu các nội dung được quy định trong tệp clients.del vào thư mục C:/XMLFILES trong bảng clients Liệt kê 9 Nhập khẩu dữ liệu vào bảng clients import from clients.del... đọc bài "Sử dụng XML nguyên gốc của DB2 với PHP." Hỗ trợ kho dữ liệu Với việc phát hành DB2 9. 7, sự hỗ trợ XML đã được mở rộng cho một môi trường kho dữ liệu Bây giờ DPF (tính năng phân vùng dữ liệu) sẽ hoàn toàn hỗ trợ các cột XML Hiện nay, việc này cho phép các hoạt động XML về phân tích cú pháp, chuyển hướng, chuyển đổi, tuần tự hóa và xây dựng chạy song song với các lợi ích hiệu năng Lúc này, bạn . Hãy khởi đầu nhanh chóng với DB2 9 pureXML, Phần 1: XML là lõi Cynthia M. Saracco, Kiến trúc giải pháp cao cấp, IBM Tóm tắt: Bản phát hành DB2 9 của IBM® mô tả một kiến. trúc (DBMS). Lưu ý: Được viết lần đầu vào năm 2006, bài viết này luôn được cập nhật để theo kịp với các thay đổi sản phẩm trong phiên bản 9. 5 và 9. 7 của DB2. Mở đầu Quản lý các dạng dữ liệu mới. thống của DB2 vẫn còn nguyên, bao gồm cả sự hỗ trợ của nó cho SQL và các cấu trúc dữ liệu dạng bảng. Hãy khám phá công nghệ XML của DB2 9 và tìm hiểu lý do tại sao bây giờ IBM coi DB2 là hệ

Ngày đăng: 06/09/2014, 16:33

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w