intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Nâng cao tính thấu đáo nghiệp vụ và khả năng mở rộng của dữ liệu XML với các đặc tính pureXML của DB2 phiên bản mới 9.7

Chia sẻ: Nguyen Nhi | Ngày: | Loại File: PDF | Số trang:40

58
lượt xem
4
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Matthias Nicola, Chuyên gia về hiệu năng CSDL, IBM Silicon Valley Laboratory Cynthia M. Saracco, Kiến trúc giải pháp cao cấp, IBM Tóm tắt: Các tính năng mới về thiết kế, quản trị và về phát triển cơ sở dữ liệu cho pureXML đã có sẵn tại cơ sở dữ liệu DB2® phiên bản 9.7 của IBM cho các hệ điều hành Linux®, UNIX® và Windows®, (được công bố ngày 22 tháng Tư 2009).

Chủ đề:
Lưu

Nội dung Text: Nâng cao tính thấu đáo nghiệp vụ và khả năng mở rộng của dữ liệu XML với các đặc tính pureXML của DB2 phiên bản mới 9.7

  1. Nâng cao tính thấu đáo nghiệp vụ và khả năng mở rộng của dữ liệu XML với các đặc tính pureXML của DB2 phiên bản mới 9.7 Matthias Nicola, Chuyên gia về hiệu năng CSDL, IBM Silicon Valley Laboratory Cynthia M. Saracco, Kiến trúc giải pháp cao cấp, IBM Tóm tắt: Các tính năng mới về thiết kế, quản trị và về phát triển cơ sở dữ liệu cho pureXML đã có sẵn tại cơ sở dữ liệu DB2® phiên bản 9.7 của IBM cho các hệ điều hành Linux®, UNIX® và Windows®, (được công bố ngày 22 tháng Tư 2009). Bạn hãy tìm hiểu thêm về cách các công nghệ này có thể giúp các công ty tích hợp dữ liệu XML một cách hiệu quả hơn vào các môi trường kinh doanh thông minh như thế nào và làm sao các công ty có thể đối phó với khối lượng dữ liệu XML ngày càng tăng lên. Bài viết này tóm tắt các khả năng mới của pureXML, giải thích cách chúng có thể được sử dụng và thảo luận về một kịch bản ứng dụng mẫu. Mục lục Giới thiệu  Nhìn lại quá trình phát triển của DB2 pureXML  Khám phá các trường hợp sử dụng mẫu  Sử dụng phân đoạn (cơ sở dữ liệu) dựa trên băm để có khả năng mở rộng  tối đa Sử dụng phân đoạn theo dải để cuộn vào và cuộn ra dữ liệu theo dòng thời  gian
  2. Sử dụng phân cụm nhiều chiều để thực hiện truy vấn  Khám phá việc nén dữ liệu XML và chỉ mục để đạt hiệu quả lưu trữ và hiệu  năng Hiểu biết các hàm do người sử dụng định nghĩa để tăng tính linh hoạt của  ứng dụng Khám phá thêm các cải tiến về quản trị, phát triển ứng dụng và hiệu năng  Kết luận  Tài nguyên  Đôi nét về các tác giả  Giới thiệu Đối với nhiều tổ chức đang cố gắng để tạo một môi trường CNTT linh hoạt và đáng tin cậy, một môi trường cung cấp một cái nhìn thấu đáo hơn đối với các hoạt động kinh doanh trọng yếu, thì các hệ thống quản lý thông tin cốt lõi đang chịu áp lực nhiều hơn để thích ứng với nhu cầu kinh doanh luôn thay đổi. Để giúp các công ty đối phó với các thách thức, IBM đã nâng cao các đặc tính của DB2 9.7 của mình cho pureXML trong nhiều hướng quan trọng. Các đặc tính mới trong DB2 9.7 cho phép quản trị viên sử dụng các tuỳ chọn mới cho việc thiết kế cơ sở dữ liệu dành cho dữ liệu XML, bao gồm việc phân đoạn dựa vào băm (phân đoạn cơ sở dữ liệu), phân đoạn theo dải (phân đoạn bảng) và phân cụm nhiều chiều. Các tùy chọn này có thể giúp các công ty chứa đựng khối lượng dữ liệu lớn, khai thác môi trường xử lý song song, đơn giản hóa việc bổ sung hoặc loại bỏ các dữ liệu nhạy thời gian, nâng cao tốc độ thực hiện của nhiều kiểu truy vấn. Được sử dụng riêng rẽ hoặc kết hợp với nhau, các tùy chọn thiết kế
  3. này của DB2 cho phép các tổ chức kết hợp dữ liệu XML vào kho dữ liệu quan hệ của họ; tạo kho lưu trữ dữ liệu vận hành cho các thông điệp, tài liệu và cấp dữ liệu XML; và cải thiện khả năng mở rộng tải công việc xử lý giao dịch XML. Các tùy chọn thiết kế cơ sở dữ liệu mới này chỉ là một phần của những cải tiến về pureXML trong DB2 9.7. Bài viết này giới thiệu cho bạn những tùy chọn đó và các khả năng mới khác của pureXML, giải thích khi nào thì chúng có ích nhất và cung cấp các mẹo để giúp bạn bắt đầu. Bài viết này bàn về các vấn đề sau: Một tổng quan ngắn về DB2 pureXML cho những ai chưa quen với công  nghệ này. Các ca sử dụng mẫu và kịch bản ứng dụng cho DB2 pureXML.  Phân đoạn cơ sở dữ liệu dựa vào băm, mang lại khả năng mở rộng đáng kể.  Phân đoạn dựa theo dải, giúp các công ty cuộn vào và cuộn ra (roll in và  roll out) dữ liệu theo thời gian (một yêu cầu phổ biến trong kho dữ liệu). Phân cụm nhiều chiều, phương thức này thường cải thiện hiệu suất của các  truy vấn phân tích. Nén dữ liệu XML và các chỉ mục, cải thiện hiệu quả lưu trữ và hiệu năng  chạy thi hành cho những tải công việc nhất định. Các hàm do người dùng định nghĩa chúng tiêu thụ, xử lý và trả lại dữ liệu  XML. Những hàm như vậy khuyến khích tái sử dụng mã và đơn giản hóa việc phát triển và bảo trì các truy vấn. Các thủ tục lưu sẵn mới, các hàm do hệ thống cung cấp, nâng cao hiệu năng  và các đặc tính năng khác, đơn giản hóa việc phát triển ứng dụng và quản trị của DB2 pureXML.
  4. Nhìn lại quá trình phát triển của DB2 pureXML Từ năm 2006, DB2 phiên bản 9 đã cung cấp cho các công ty một giao diện lập trình ứng dụng phổ biến và nền tảng quản lý cơ sở dữ liệu cho dữ liệu được mô hình hóa trong các bảng và trong các phân cấp XML. Kiến trúc quản lý cơ sở dữ liệu lai này, như được minh họa trong hình 1, cho phép các công ty mở rộng môi trường cơ sở dữ liệu quan hệ truyền thống của mình để quản lý trực tiếp các thông điệp và các tài liệu XML mà không cần phải chia nhỏ hoặc ánh xạ dữ liệu này vào các cột riêng lẻ của các bảng khác nhau (do vậy sẽ chuyển đổi XML thành các kiểu dữ liệu SQL truyền thống). Thay vào đó, dữ liệu XML có thể được lưu giữ nguyên vẹn ở định dạng phân cấp nguyên sinh của nó cùng với các dữ liệu quan hệ. Các ứng dụng có thể lấy ra những phần có liên quan của dữ liệu XML một cách dễ dàng và hiệu quả. Ứng dụng cũng có thể dễ dàng tích hợp dữ liệu XML và dữ liệu quan hệ. Hình 1. Kiến trúc DB2 phiên bản 9 với hỗ trợ được xây dựng sẵn cho các dữ
  5. liệu quan hệ và XML Để sử dụng khả năng pureXML của DB2, các quản trị viên tạo một bảng với một hoặc nhiều cột kiểu XML. Dịch vụ lập chỉ mục XML, tối ưu hóa truy vấn, quản lý lưu trữ, và các dịch vụ khác của DB2 giúp đảm bảo hiệu quả và hiệu suất thời gian chạy thi hành mạnh. Liệt kê 1 cho thấy làm việc với dữ liệu XML trong DB2 đơn giản như thế nào. Các mã trong liệt kê 1 làm các việc sau: 1. Tạo ra một bảng với các cột quan hệ và các cột XML 2. Lập chỉ mục cho một phần cụ thể của cột XML 3. Chèn dữ liệu vào bảng 4. Đưa ra các truy vấn (bằng các câu lệnh SQL, SQL/XML và Xquery đơn giản)
  6. 5. Cập nhập giá trị của một phần tử XML được lưu giữ trong một tài liệu XML Liệt kê 1. Làm việc với DB2 pureXML -- Create a table with an integer and an XML column CREATE TABLE customer (cid INTEGER, info XML); -- Create an XML index for customer zip code data CREATE INDEX idx1 ON customer(info) GENERATE KEYS USING XMLPATTERN '/customerinfo/addr/zip' AS SQL VARCHAR(5); -- Populate the table with data using a simple INSERT statement INSERT INTO customer (cid, info) VALUES (?,?); -- Retrieve relational data and full XML documents
  7. -- for customers using simple SQL SELECT cid, info FROM customer WHERE cid > 1234; -- Retrieve names of customers in a specific zip code -- who have an ID of > 1234 using SQL/XML SELECT XMLQUERY('$INFO/customer/name') FROM customer WHERE cid > 1234 and XMLEXISTS('$INFO/customer/addr[zip = 95123]'); -- Retrieve an XML element that lists the names of customers -- in a given zip code using XQuery xquery for $i in db2- fn:xmlcolumn("CUSTOMER.INFO")/customer where $i/addr/zip = 95123
  8. return {$i/name} ; -- Update XML element value related to zip code UPDATE customer SET INFO = XMLQUERY('copy $new := $INFO modify do replace value of $new/customer/addr/zip with 95141 return $new') WHERE ...; Khám phá các trường hợp sử dụng mẫu Kiến trúc hướng dịch vụ (SOA), các ứng dụng lấy Web làm trọng tâm, và các dự án tích hợp dựa trên tiêu chuẩn đặc thù công nghiệp thường dựa vào dữ liệu XML để xác định các dữ liệu kinh doanh quan trọng được biểu diễn và được trao đổi như thế nào. Hơn nữa, việc kiểm định và tự tuân thủ thường yêu cầu là các hồ sơ
  9. đầy đủ của các giao dịch kinh doanh vẫn có thể truy cập đ ược cho một khoảng thời gian nào đó. Việc sử dụng XML ngày càng tăng lên khiến nhiều công ty phải đánh giá xem liệu cơ sở dữ liệu của họ có thể được điều chỉnh để đối phó với những cấu trúc phức tạp, hay thay đổi, là tính chất cố hữu của các thông điệp và tài liệu XML. Việc quản lý dữ liệu XML đang tác động đến cả môi trường hướng giao dịch lẫn các ứng dụng phân tích. Tích hợp các dữ liệu vận hành Bản chất linh hoạt, tự miêu tả của XML làm cho nó rất phù hợp để trình bày các tạo tác nghiệp vụ khác nhau. Các tạo tác này thường được lưu trữ trong hệ quản lý cơ sở dữ liệu quan hệ hiện có hoặc hệ thống tệp tin, hoặc các tạo tác được tạo ra một cách động bởi các dịch vụ Web, nguồn cấp dữ liệu thời gian thực, hoặc phần mềm khác . Việc xử lý và phân tích thông tin từ các nguồn khác nhau này là một thách thức rõ ràng. Các công ty có thể được lợi do việc duy trì một kho chứa dữ liệu dựa trên XML cùng chia sẻ. Bản chất biến đổi của cấu trúc XML đáp ứng được một phạm vi rộng các nhu cầu nghiệp vụ. Kho lưu trữ dữ liệu vận hành (Operational Data Storage-ODS) được xây dựng trên XML có thể giảm chi phí phát triển ứng dụng và có thể cung cấp một cơ sở hạ tầng lanh lẹn để thích ứng với nhu cầu quản lý dữ liệu đang tiến triển. Hình 2 minh họa một kiến trúc mẫu, trong đó công nghệ pureXML của DB2 đ ược sử dụng như một kho lưu trữ dữ liệu vận hành để tích hợp dữ liệu từ nhiều nguồn đại diện cho nhiều ứng dụng kinh doanh. Các nguồn dữ liệu và các ứng dụng mới hơn có thể thậm chí không cần bộ tiếp hợp XML, bởi vì chúng có thể sử dụng XML làm định dạng trao đổi dữ liệu nguyên sinh của chúng.
  10. Hình 2. DB2 pureXML hoạt động như một kho dữ liệu vận hành tích hợp Mở rộng kho dữ liệu Kể từ khi được chấp nhận vào những năm 1990, kho dữ liệu đóng một vai trò ngày càng quan trọng trong việc giúp đỡ các công ty phân tích các xu hướng và cải thiện chiến lược kinh doanh của họ. Trong khi việc quản lý cơ sở dữ liệu quan hệ vẫn là sự lựa chọn công nghệ thích hợp cho các kho dữ liệu, thì việc bổ sung khả năng quản lý dữ liệu XML có thể mang lại tính linh hoạt cao hơn, cho phép các công ty hỗ trợ báo cáo kinh doanh đang tiến triển và các yêu cầu phân tích mà không phải thay đổi đáng kể lược đồ cơ sở dữ liệu hoặc viết lại mã ứng dụng hiện có.
  11. Xin lấy ví dụ, ta hãy xem xét một kho dữ liệu theo dõi các thông tin bán hàng. Khi sử dụng một thiết kế cơ sở dữ liệu theo lược đồ hình sao, một bảng sự việc có thể chứa các dữ liệu bán hàng theo sản phẩm, theo vùng địa lý và theo khoảng thời gian. Dữ liệu trong bảng sự việc này thường sẽ được nối với dữ liệu trong các bảng chiều (dimension tables) để có được những chi tiết cụ thể về các sản phẩm, các vùng khác nhau, vv. Thật không may, việc phát triển một thiết kế cơ sở dữ liệu chi tiết cho một kho dữ liệu như vậy có thể gặp nhiều thách thức. Ta hãy xem xét những thách thức liên quan đến việc thiết kế một bảng chiều dữ liệu thích hợp nếu ta có một dải sản phẩm đa dạng cần phải tr ình bày. Các loại sản phẩm khác nhau có các thuộc tính khác nhau, như vậy làm cho rất khó xác định trước thuộc tính nào của sản phẩm nào cần được cung cấp cho các nhà phân tích và điều hành kinh doanh. Rất có thể các nhà phân tích sẽ muốn khoan sâu xuống hoặc cắt lát và băm nhỏ (slice-and-dice) các dữ liệu về việc bán sản phẩm theo các cách mà ta không dự kiến được, chẳng hạn họ muốn xem xét việc bán áo len của phụ nữ theo kích thước, màu sắc, loại chất liệu, đường viền cổ áo, chiều dài tay áo, vv. Với một thiết kế chỉ theo mô hình quan hệ, thì mỗi thuộc tính có thể quan tâm đến của mỗi sản phẩm sẽ cần phải được lưu trữ tại cột riêng của nó, dẫn đến một bảng chiều dữ liệu cồng kềnh. Bởi vì các thuộc tính sẽ khác nhau từ sản phẩm này đến sản phẩm khác, một bảng như vậy sẽ có nhiều hàng và các cột thì thưa dữ liệu, rất kém hiệu quả. Và, vì các sản phẩm mới và các thuộc tính sản phẩm mới sẽ được đưa thêm vào theo thời gian, nên lược đồ cơ sở dữ liệu (và bất kỳ ứng dụng nào phụ thuộc vào lược đồ đó) sẽ cần phải được thay đổi, làm như vậy khá tốn kém. Việc thêm một cột vào bảng trong kho dữ liệu của công ty cũng có thể gặp phải quy trình xem xét và phê duyệt lâu tại nhiều tổ chức CNTT. Một cách ít gây phiền toái để phục vụ cho nhu cầu kinh doanh hay thay đổi nh ư vậy là cách sử dụng một hoặc nhiều cột XML trong lược đồ kho dữ liệu. Các thuộc tính thường sử dụng có thể vẫn thu thập trong các cột quan hệ, trong khi các
  12. chi tiết bổ sung có thể được duy trì trong một cột XML sẵn sàng để chứa các cấu trúc hay thay đổi và được truy cập một cách dễ dàng để truy vấn và báo cáo. Trong ví dụ trên, một cột XML có thể được sử dụng trong bảng chiều dữ liệu có chứa dữ liệu về sản phẩm. Thuộc tính mới của sản phẩm cần phải đ ược theo dõi chỉ cần đơn giản đưa vào làm các phần tử mới trong các tài liệu XML được kết hợp với sản phẩm đích. Ta không cần phải thay đổi lược đồ của cơ sở dữ liệu. Hình 3 mô tả cách mà kho dữ liệu có thể được mở rộng bằng XML. Hình 3. Kho dữ liệu quan hệ được mở rộng bằng khả năng quản lý dữ liệu XML. Bảng sự kiện và tất cả các bảng chiều dữ liệu có thể bao gồm các cột XML, tuy nhiên ví dụ này chỉ cho ta thấy một bảng cho một loại dữ liệu với
  13. một cột XML. Trong hình 3, một kho lưu trữ dữ liệu vận hành cấp thông tin mới theo định kỳ cho kho dữ liệu. Một số thông tin này có thể là XML, trong khi các thông tin khác có thể là thông tin quan hệ. Các cột XML có thể được bổ xung vào bảng sự kiện hoặc bảng chiều dữ liệu khi cần thiết, mặc dù hình 3 minh hoạ dữ liệu XML tại chỉ một bảng chiều dữ liệu (bảng để theo dõi các chi tiết của các sản phẩm khác nhau). Hỗ trợ các ứng dụng lấy XML làm tâm điểm Trong khi công nghệ DB2 pureXML có thể mở rộng các cơ sở dữ liệu phân tích và hỗ trợ ra quyết định, thì nó cũng rất phù hợp để giúp các công ty quản lý khối lượng tăng lên của các thông điệp và tài liệu XML mà nhiều kiến trúc hướng dịch
  14. vụ tạo ra cho các ứng dụng xử lý giao dịch. Việc sử dụng ngày càng tăng của các biểu mẫu điện tử và dịch vụ Web là hai yếu tố đóng góp vào việc tăng khối lượng dữ liệu XML. DB2 giúp các công ty đối phó với việc tăng khối lượng của dữ liệu XML bằng cách loại bỏ việc phải chia nhỏ XML vào các cột của các bảng khác nhau. Việc lưu trữ XML trong định dạng phân cấp nguyên sinh của nó và làm cho XML có thể ngay lập tức được truy cập thông qua các biểu thức XPath, XQuery và SQL/XML theo tiêu chuẩn công nghiệp sẽ giảm chi phí hành chính và đơn giản hoá việc phát triển ứng dụng. Sử dụng phân đoạn (cơ sở dữ liệu) dựa trên băm để có khả năng mở rộng tối đa Vì khối lượng dữ liệu tăng lên, nên việc phân tán nội dung của một cơ sở dữ liệu trên nhiều bộ xử lý và thiết bị lưu trữ có thể giúp các công ty đạt được khả năng mở rộng tuyến tính. DB2 phiên bản 9.7 mở rộng tính năng phân đoạn cơ sở dữ liệu của DB2 (DPF) để hỗ trợ cả XML và dữ liệu quan hệ. Trước đây, DPF chỉ hỗ trợ dữ liệu quan hệ. Hình 4. Kiến trúc DB2 mẫu với phân đoạn dựa trên băm, cho phép xử lý song
  15. song các truy vấn và các hoạt động cơ sở dữ liệu khác Như hình 4 cho thấy, DPF là một tùy chọn thiết kế cơ sở dữ liệu vật lý, sử dụng nhiều phân đoạn cơ sở dữ liệu riêng biệt trong một môi trường đa xử lý. Nhiều phân đoạn cơ sở dữ liệu có thể được tạo ra trong chỉ một máy SMP (đa xử lý đối xứng) hoặc có thể được phân tán trên các máy riêng biệt trong một môi trường không chia sẻ gì. DPF có thể hữu ích cho tải công việc nặng về đọc, bao gồm cả những công việc phổ biến cho các môi trường kho dữ liệu. Với DPF, mỗi hàng của một bảng đã cho được đặt trong một phân đoạn cơ sở dữ liệu cụ thể dựa vào giá trị băm của khóa phân phối của bảng đó, khóa này được định nghĩa khi tạo bảng. Khi dữ liệu được đọc ra hoặc được viết vào cơ sở dữ liệu, thì DB2 tự động hướng công việc thích hợp tới các phân đoạn có liên quan. Kết quả là, các nguồn tài nguyên tính toán kết hợp với nhiều phân đoạn có thể hoạt động song song để đáp ứng các y êu cầu của người dùng ban đầu. Khả năng mở rộng tuyến tính đạt được bằng cách bổ sung thêm phân đoạn mới khi khối lượng dữ liệu tăng lên. Trình Cố vấn thiết kế của
  16. DB2, một công cụ quản trị được xây dựng sẵn, có thể đưa ra lời khuyên cho quản trị viên về thiết kế phân đoạn của họ. Để đơn giản hóa việc quản trị dữ liệu XML và cung cấp khả năng mở rộng tối đa, DB2 phiên bản 9.7 cho phép dữ liệu XML được phân tán trên các phân đoạn cơ sở dữ liệu khác nhau. Việc phân tán dữ liệu cho phép nhiều hoạt động đ ược thực thi song song một cách tự động, bao gồm nạp, chèn, truy vấn, cập nhật, xóa, xác nhận hợp lệ và xuất bản dữ liệu XML. Đặc biệt, các truy vấn phân tích phức tạp và có khả năng sẽ chạy thi hành lâu có thể được chia nhỏ và được thực thi song song, điều này cải thiện đáng kể thời gian đáp ứng. Cũng như với các bản phát hành trước của DB2, điều quan trọng là phải chọn một khoá phân phối, khóa này phân phối đều các hàng trên các phân đoạn. Khoá phân phối phải bao gồm các cột quan hệ, và nó không thể tham khảo một cột XML. Lý tưởng nhất là khóa này chứa dữ liệu với nhiều giá trị khác biệt để tránh các phân đoạn có kích thước không đồng đều. Việc khai thác DPF cho dữ liệu XML trong DB2 9.7 là rất tương tự như khai thác DPF cho dữ liệu quan hệ. Cụ thể là quản trị viên phải định nghĩa các đối tượng thích hợp của cơ sở dữ liệu, chẳng hạn như các nhóm phân đoạn, các vùng bảng, các pool đệm, vv. Các bảng phải được tạo ra bằng mệnh đề DISTRIBUTE BY HASH trong câu lệnh CREATE TABLE. Liệt kê 2 tạo ra một bảng SALES với các cột quan hệ cho ORDERID, PERSONID và SALESDATE, cũng như tạo ra một cột XML để thu thập DETAILS (chi tiết) về đơn đặt hàng. Bạn lưu ý rằng các giá trị của cột ORDERID sẽ quyết định việc phân đoạn các hàng như thế nào đối với bảng này. Liệt kê 2. Tạo một bảng phân đoạn dựa trên băm, bao gồm một cột XML
  17. CREATE TABLE sales ( orderid INT NOT NULL, personid INT, salesdate DATE, details XML) DISTRIBUTE BY HASH (orderid) Việc tìm kiếm toàn văn bản của dữ liệu của các bảng phân đoạn dựa trên băm bằng cách sử dụng công cụ tìm kiếm Net Search Extender (NSE) bây giờ đã có sẵn để sử dụng. Sử dụng phân đoạn theo dải để cuộn vào và cuộn ra dữ liệu theo dòng thời gian Một yêu cầu thường xuyên đối với kho dữ liệu và môi trường kinh doanh thông minh là duy trì một lịch sử cuốn chiếu của dữ liệu chọn lựa trong một chu kỳ thời gian đã cho. Ví dụ, một công ty muốn duy trì lịch sử cuốn chiếu bán hàng trong thời kỳ 5 năm để các nhà phân tích kinh doanh có thể truy cập thông tin về mua hàng và đánh giá xu hướng kinh doanh mới xuất hiện. Trong kịch bản như vậy, dữ liệu cũ có thể cần phải được thanh lọc hoặc được lưu trữ trên cơ sở theo tháng hoặc theo quý (cuộn ra), và các dữ liệu mới có thể cần phải được nạp theo các khung thời gian tương tự (cuộn vào).
  18. Phân đoạn theo dải đáp ứng yêu cầu quản trị này, và DB2 9.7 mở rộng hỗ trợ trước đó cho công nghệ này để bao gồm cả các dữ liệu XML. Phân đoạn theo dải — đôi khi được gọi là phân đoạn bảng — là phân đoạn một bảng dựa trên dải các giá trị được chứa trong một hoặc nhiều cột. Thông thường thì khóa phân đoạn dựa trên thời gian, dẫn đến một thiết kế hướng dữ liệu của một tuần, tháng hoặc quý đã cho, được lưu trữ trong một phân đoạn nhất định. Bởi vì mỗi phân đoạn được coi như là một đối tượng cơ sở dữ liệu riêng biệt, nên các quản trị viên có thể dễ dàng cuộn vào (gắn thêm) dữ liệu mới hoặc cuộn ra (tháo bỏ) dữ liệu cũ. Ngoài ra, nhiều truy vấn có được hiệu năng thời gian chạy thi hành ưu việt vì DB2 tự động tránh truy xuất dữ liệu trong các phân đoạn không liên quan đến các yêu cầu của người sử dụng. Hình 5 minh hoạ một môi trường DB2 mẫu, phân đoạn dữ liệu trong bảng Sales (bán hàng) theo quý. Hình 5. Trong môi trường phân đoạn theo dải, DB2 chỉ nhằm vào các phân đoạn cần thiết để đáp ứng yêu cầu của người sử dụng
  19. Việc quản lý một bảng phân đoạn theo dải bao gồm một hoặc nhiều cột XML không khác nhiều so với việc quản lý bảng phân đoạn theo dải chỉ với các cột quan hệ. Đặc biệt là các câu lệnh SQL trước đây được hỗ trợ để tạo và thay đổi các bảng để phân đoạn theo dải cũng như gắn thêm và tháo bỏ các phân đoạn vẫn áp dụng được. Thêm nữa, các khóa phân đoạn vẫn còn phải dựa vào dữ liệu quan hệ. Liệt kê 3 tạo ra bảng phân đoạn theo dải với các dữ liệu quan hệ và dữ liệu XML, cuộn ra (tháo bỏ) một phân đoạn chứa dữ liệu cũ ra, và cuộn vào (gắn thêm) một phân đoạn chứa dữ liệu mới nhập. Liệt kê 3. Sử dụng phân đoạn theo dải với pureXML của DB2 -- Create a range-partitioned table CREATE TABLE salespart ( orderid INT, orderdate DATE, ordermonth INT NOT NULL GENERATED ALWAYS AS (month(orderdate)), orderyear INT NOT NULL GENERATED ALWAYS AS (year(orderdate)), customerid INT,
  20. salesrepid INT, details XML) PARTITION BY RANGE (orderyear, ordermonth) (PART q109 STARTING(2009, 1) ENDING (2009, 3) INCLUSIVE, PART q209 ENDING (2009, 6) INCLUSIVE, PART q309 ENDING (2009, 9) INCLUSIVE, PART q409 ENDING (2009, 12) INCLUSIVE); -- Insert or load data for 1Q – 4Q 2009 sales into the table ... -- Create another table to contain new sales data to be attached CREATE TABLE currentsales ( orderid INT, orderdate DATE, ordermonth INT NOT NULL GENERATED
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2