Tính sẵn sàng liên tục được cung cấp qua sao chép Q Công nghệ sao chép Q trong DB2 AESE có thể tạo bản sao các giao dịch giữa các cơ sở dữ liệu với độ trễ thấp ở lưu lượng rất cao và vượ
Trang 1Nghiên cứu sâu về Ấn bản DB2 Advanced Enterprise Server
Phần 2: Liên hiệp và sao chép Q
Bài này làm sáng tỏ hai tính năng quan trọng trong DB2 AESE:
Sao chép Q cung cấp tính sẵn sàng cao của hệ thống thông qua việc sao chép chủ
động/chủ động giữa một cặp máy chủ dữ liệu DB2 cho LUW
Liên hiệp cung cấp truy cập trong suốt đến dữ liệu từ các cơ sở dữ liệu khác nhau giúp
làm đơn giản hóa việc tích hợp dữ liệu cho các khách hàng đang sử dụng DB2 và các công nghệ cơ sở dữ liệu khác trong một môi trường hỗn hợp AESE thêm sự liên hiệp cơ
sở dữ liệu Oracle vào sự liên hiệp đã sẵn có của DB2 cho các cơ sở dữ liệu DB2 và Informix®
Xem qua DB2 Advanced Enterprise Server Edition (DB2 AESE)
DB2 AESE gồm có các tính năng và lợi ích sau đây, không tính thêm chi phí:
Tính năng lưu trữ tối ưu hóa (Nén) làm giảm chi phí lưu trữ
IBM Optim Performance Manager (OPM – Trình quản lý hiệu năng Optim của IBM) giúp xác định các vấn đề trước khi chúng ảnh hưởng đến kinh doanh
Sao chép đồng nhất (Q-REP) cho phép di trú liền mạch phiên bản này sang phiên bản khác và các cấu trúc liên kết chủ động-chủ động có tính sẵn sàng cao (giới hạn cho một cặp cơ sở dữ liệu DB2 cho LUW)
Kiểm soát truy cập nâng cao cho phép kiểm soát tốt hơn những ai có thể truy cập dữ liệu của bạn
IBM Optim Database Administrator (ODA – Nhà quản trị cơ sở dữ liệu Optim của IBM) giúp tiết kiệm thời gian và giảm các lỗi về quản trị cơ sở dữ liệu
IBM Optim Development Studio (ODS – Xưởng phát triển Optim của IBM) sẽ giúp phát triển nhanh và cải thiện sự hợp tác giữa các nhóm
IBM InfoSphere™ Federation (Liên hiệp InfoSphere của IBM) cho phép tích hợp dữ liệu thời gian thực, giữa các ứng dụng (giới hạn với liên hiệp DB2, Informix® và Oracle)
IBM DB2 Workload Manager sắp xếp phân bổ tài nguyên để ưu tiên kinh doanh
Tính sẵn sàng liên tục được cung cấp qua sao chép Q
Công nghệ sao chép Q trong DB2 AESE có thể tạo bản sao các giao dịch giữa các cơ sở dữ liệu với độ trễ thấp ở lưu lượng rất cao và vượt qua các khoảng cách hầu như không hạn chế với hàng ngàn bảng DB2, trong khi vẫn giữ gìn tính toàn vẹn giao dịch và có khả năng chịu được sự cố ngừng hoạt động của hệ thống và mạng Ví dụ, bạn có thể có thể đạt tới một lưu lượng hàng triệu thay đổi mỗi phút với độ trễ ít hơn một giây
Trong DB2 AESE, khả năng này được cung cấp thông qua việc sử dụng hạn chế tính năng sao
chép đồng nhất của IBM cho DB2, cho phép sao chép chủ động/chủ động giữa một cặp cơ sở dữ
Trang 2liệu DB2 cho LUW để tối đa hóa việc sử dụng các tài nguyên máy chủ, giảm chi phí và cung cấp tính sẵn sàng cho nhiều vị trí Nếu cần một kịch bản sao chép linh hoạt hơn (ví dụ, sao chép với một máy chủ Oracle), bạn có thể mua phiên bản đầy đủ của InfoSphere Replication Service (Dịch vụ sao chép InfoSphere)
Sao chép Q hai vị trí của DB2 AESE là lý tưởng cho các giải pháp về tính sẵn sàng liên tục nhiều
vị trí, ví dụ như các cơ sở dữ liệu chủ động/chủ động Mỗi cơ sở dữ liệu đều là chủ động, cho phép phân phối tải công việc Các cơ sở dữ liệu có thể được cấu hình khác nhau và lưu trú trên các kiểu phiên bản phần cứng và phần mềm khác nhau, cho phép khắc phục lỗi ngừng hoạt động ngay lập tức, cũng như không có thời gian chết trong quá trình bảo trì, nâng cấp và di trú Sao chép có thể theo nhiều hướng và quản lý các thay đổi cơ sở dữ liệu xung đột Và nếu công ty của bạn đang sử dụng tính năng IBM pureScale® của DB2 Enterprise Server, sao chép Q có thể được sử dụng gắn liền với nó để tăng thêm giá trị
Các thành phần của sao chép Q gồm có:
Một chương trình Q Capture và một chương trình Q Apply cho mỗi hướng
Một trình quản lý hàng đợi WebSphere® MQ cho mỗi hệ thống (một bản sao hạn chế của WebSphere MQ được bao gồm trong AESE)
Các bảng kiểm soát sao chép được tạo ra trong DB2 để chứa thông tin hoạt động và cấu hình sao chép Q
Các thay đổi đã nắm bắt được dàn dựng và gửi qua MQ WebSphere, cho phép di chuyển dữ liệu
ra ngoài bản ghi nhật ký DB2 một cách nhanh chóng, ngay cả khi cơ sở dữ liệu đích ngừng hoạt động Mỗi giao dịch cơ sở dữ liệu đã nắm bắt được công bố trong một thông báo MQ Quá trình sao chép Q được mô tả dưới đây
Hình 1 Quá trình sao chép Q
Để minh họa một quá trình sao chép chủ động/chủ động, hãy xem xét kịch bản đã đơn giản hóa được mô tả sau đây:
Trang 3 Các ứng dụng cập nhật được giao cho vị trí chính với các ứng dụng chỉ đọc được giao cho vị trí dự phòng Hãy nhớ rằng, sao chép Q cũng làm việc trong trường hợp cả hai vị trí đều là chủ động để cập nhật
Các chương trình nắm bắt-ghi nhật ký và chương trình ứng dụng chạy ở cả hai vị trí, nhưng trong kịch bản đã đơn giản hóa này, dữ liệu chỉ được sao chép theo một hướng —
từ vị trí chính sang vị trí dự phòng
Một kết nối chuyển đổi dự phòng được thiết lập để tự động chuyển đổi các ứng dụng cập nhật từ vị trí chính sang vị trí dự phòng
Hình 2 Kịch bản sao chép
Khi xảy ra sự cố ngừng hoạt động tại vị trí chính, các ứng dụng tự động chuyển sang vị trí dự phòng, mặc dù vẫn có một quá trình thủ công có sẵn nếu thích sử dụng Để tránh các xung đột, hãy để cho việc sao chép kết thúc việc xử lý bất kỳ dữ liệu đã xếp hàng đợi nào trước khi bạn cho phép các ứng dụng đang cập nhật khởi chạy trên vị trí dự phòng Việc sao chép sẽ bắt đầu xếp hàng dữ liệu đã thay đổi để trở lại vị trí chính ngay sau khi các ứng dụng đã cập nhật truy cập vào hệ thống dự phòng
Hình 3 Sự cố ngừng hoạt động của vị trí chính
Khi vị trí chính hoạt động trở lại, các ứng dụng cập nhật vẫn ở nơi mà chúng đã ở đó cho đến khi giải quyết xong các xung đột tiềm năng Đầu tiên, các chương trình nắm bắt được khởi động ở vị trí chính để nắm bắt bất kỳ dữ liệu đã thay đổi nào đã bị kẹt lại ở vị trí chính khi nó bị ngừng hoạt động Việc này tạo ra cơ hội để xem liệu có các xung đột không do các thay đổi cũ hơn ở vị
Trang 4trí chính có thể không phù hợp với các thay đổi mới ở vị trí dự phòng Bất cứ khi nào bản sao chép phát hiện ra một xung đột, SQL của xung đột đó được ghi nhật ký vào trong một bảng Có thể tạo ra một báo cáo để xem liệu có bất kỳ vấn đề lớn nào tồn tại không Việc chọn tùy chọn ngăn không cho sao chép áp dụng dữ liệu có xung đột cho bảng dự phòng, sẽ ngăn không cho dữ liệu cũ hơn ghi đè lên dữ liệu mới hơn (được giả định là tốt hơn)
Hình 4 Thu nhận dữ liệu từ vị trí dự phòng
Khi dữ liệu bị mắc kẹt được sao chép lại, dữ liệu dự phòng có thể được gửi đến vị trí chính bằng cách khởi động chương trình ứng dụng trên hệ thống chính Sau đó, dữ liệu dự phòng sẽ chảy sang vị trí chính Nếu trước đó bạn đã thấy một sự xung đột giữa dữ liệu cũ hơn ở vị trí chính với
dữ liệu mới hơn ở vị trí dự phòng, thì tùy chọn đã chọn này cho phép dữ liệu mới hơn ghi đè lên
dữ liệu cũ hơn, nhưng được ghi nhật ký lại để bạn xem sau này Các ứng dụng có thể được di chuyển trở lại vị trí chính, nhưng tốt nhất là hãy chờ cho đến khi chương trình ứng dụng giải quyết xong công việc tồn đọng của vị trí dự phòng trước đã Kết quả là, hệ thống trông giống như kịch bản ban đầu
Hình 5 Các ứng dụng cập nhật quay lại vị trí chính
Ngoài các khả năng sao chép Q linh hoạt và mạnh mẽ do DB2 AESE cung cấp, có một số báo cáo và công cụ có sẵn để làm cho nó còn hiệu quả hơn Đầu tiên là bản tóm tắt sức khỏe mẫu từ
Bảng điều khiển sao chép Q (Q Replication Dashboard), cung cấp các khung nhìn trực tiếp toàn
cục và các khung nhìn gộp chung về sức khỏe và trạng thái của chương trình, các hàng đợi, đăng
Trang 5ký và cấu trúc liên kết Các thông tin chi tiết về truy vấn ngược có sẵn sau thông tin trạng thái, cũng như các truy cập vào dữ liệu lịch sử Sự hỗ trợ cho các cảnh báo, các hoạt động và các vai trò người dùng để kiểm soát truy cập cũng có sẵn từ bảng điều khiển
Hình 6 Bảng điều khiển sao chép Q
Dưới đây là một báo cáo mẫu về xu hướng lịch sử của độ trễ dữ liệu từ điểm đầu đến điểm cuối tại một hệ thống đích, giúp kiểm tra việc tuân thủ SLA và lần theo vết các đỉnh nhọn bất thường
về độ trễ
Trang 6Hình 7 Lịch sử độ trễ
Cuối cùng, Q Replication Performance Advisor (Trình tư vấn hiệu năng sao chép Q) giúp xác
định các vấn đề về độ trễ với môi trường sao chép và thực sự cho thấy cách làm giảm độ trễ từ điểm đầu đến điểm cuối
Hình 8 Trình tư vấn hiệu năng sao chép Q
Trang 7Tích hợp cơ sở dữ liệu Oracle với DB2 thông qua liên hiệp
Có đi kèm trong gói AESE cho LUW là một bản sao sử dụng hạn chế của IBM InfoSphere Federation Server (Máy chủ liên hiệp InfoSphere của IBM), cung cấp sự tích hợp dễ dàng các cơ
sở dữ liệu Oracle, Informix, DB2 trong một doanh nghiệp và khả năng truy vấn dữ liệu này đang lưu trú trong nhiều cơ sở dữ liệu bằng một câu lệnh SQL duy nhất Cần có InfoSphere
Replication Server (mua riêng) để sử dụng sao chép Q với các cơ sở dữ liệu Oracle
Liên hiệp các nguồn dữ liệu khác nhau thành một hệ thống liền khối mang lại:
Tính trong suốt — Khả năng mã hóa và sử dụng ứng dụng như thể dữ liệu lưu trú trong
một cơ sở dữ liệu duy nhất Điều này cho phép các ứng dụng tiếp tục làm việc dù có bất
kỳ thay đổi nào về cách lưu trữ dữ liệu
Tính đa dạng — Khả năng thích nghi với các yêu cầu dữ liệu khác nhau và các nguồn
dữ liệu khác nhau trong doanh nghiệp
Tính tự chủ — Không có các hạn chế nào tại nguồn dữ liệu từ xa, cho phép nó tự chủ và
loại bỏ bất kỳ sự gián đoạn nào với các nguồn dữ liệu, các ứng dụng và các hệ thống
Chức năng cao — Khả năng để các ứng dụng khai thác không chỉ có mức chức năng cao
do hệ thống liên hiệp cung cấp mà còn cả các chức năng đặc biệt duy nhất của một số nguồn dữ liệu
Khả năng mở rộng và tính mở — Tính linh hoạt để liên tục tăng thêm một nguồn dữ
liệu mới vào hệ thống thông tin doanh nghiệp
Hiệu năng được tối ưu hóa — Sức mạnh của các ứng dụng đã phát triển cho các hệ
thống liên hiệp để đạt được hiệu năng mạnh mẽ mà không cần phải thực hiện các chiến lược đặc biệt để đánh giá các truy vấn
Cốt lõi của hệ thống liên hiệp gồm một cá thể DB2 hoạt động như một máy chủ liên hiệp Các thành phần bao gồm một cơ sở dữ liệu DB2 hoạt động như cơ sở dữ liệu liên hiệp, một hoặc nhiều nguồn dữ liệu như Oracle hoặc cơ sở dữ liệu DB2 khác và các khách hàng (người sử dụng
và các ứng dụng) truy cập dữ liệu thông qua cơ sở dữ liệu liên hiệp Với một cơ sở dữ liệu liên hiệp, bạn có thể sử dụng một câu lệnh SQL duy nhất để nối dữ liệu từ nhiều nguồn dữ liệu, gồm
cả chính cơ sở dữ liệu liên hiệp đó
Sau khi bạn đăng ký các bảng của một nguồn dữ liệu vào trong cơ sở dữ liệu liên hiệp, bạn có thể tham khảo chúng dễ dàng như bạn thường tham khảo các bảng cục bộ Các ứng dụng giao tiếp với máy chủ liên hiệp thông qua bất kỳ giao diện lập trình nào được DB2 hỗ trợ Do một hệ thống liên hiệp có một cơ sở dữ liệu DB2, nên bạn cũng có thể lưu trữ dữ liệu cục bộ, cũng như kết hợp thông tin từ các bảng cục bộ và từ xa
Các khái niệm cơ bản của một hệ thống liên hiệp của IBM được mô tả như sau
Trang 8Hình 9 Máy chủ liên hiệp
Để biến DB2 AESE thành một máy chủ cơ sở dữ liệu liên hiệp, bạn phải thay đổi cấu hình của trình quản lý cơ sở dữ liệu của cá thể DB2 để cho phép liên hiệp (thiết lập Federated là Yes) và cấu hình nó để giao tiếp với các nguồn dữ liệu
Các máy chủ liên hiệp giao tiếp với các nguồn dữ liệu bằng các mô đun phần mềm được
gọi là các trình bao (wrappers) Các trình bao này cung cấp logic để làm cho việc đăng
ký đối tượng liên hiệp và giao tiếp với nguồn dữ liệu dễ dàng hơn Bạn cần đăng ký một trình bao duy nhất để truy cập vào tất cả các nguồn dữ liệu của các loại mà trình bao đó
hỗ trợ Ví dụ, một trình bao cơ sở dữ liệu Oracle là tất cả những gì cần thiết cho bất kỳ số lượng nguồn dữ liệu Oracle nào
Sau khi bạn đăng ký các thư viện trình bao với cơ sở dữ liệu liên hiệp, mỗi nguồn dữ liệu
phải được xác định với hệ thống như một máy chủ Một máy chủ thường đại diện cho
một cơ sở dữ liệu trên hệ thống khác Cơ sở dữ liệu liên hiệp dựa vào các thuộc tính máy chủ để đảm bảo rằng các khả năng của mỗi nguồn dữ liệu được khai thác đúng cách Các thuộc tính máy chủ trên cơ sở dữ liệu liên hiệp lưu trữ các đặc tính của mỗi nguồn dữ liệu Trình tối ưu hóa DB2 sử dụng các đặc tính này và các hạn chế khi xác định cách tốt nhất để xử lý một truy vấn Khi sử dụng các tùy chọn máy chủ để thiết lập các thuộc tính máy chủ bên ngoài, bạn có thể chỉ rõ vị trí của nguồn dữ liệu (nút máy tính), thông tin bảo mật kết nối (ID và mật khẩu) và một số đặc tính máy chủ khác có ảnh hưởng đến hiệu năng Mỗi mô đun trình bao duy trì một tập các thuộc tính máy chủ liên quan đến
kiểu và phiên bản của các nguồn dữ liệu mà nó hỗ trợ Đẩy xuống (Pushing down) — một
hoạt động cho phép nó diễn ra trên nguồn dữ liệu từ xa — có thể có lợi trong việc giảm
Trang 9số lượng dữ liệu đưa đến máy chủ liên hiệp qua mạng, vì thế giúp cải thiện hiệu năng truy vấn
Các tên hiệu (Nicknames) được tạo ra trong cơ sở dữ liệu liên hiệp để xác định các bảng
và các khung nhìn của nguồn dữ liệu Bây giờ bạn có thể tham chiếu tên hiệu trong ứng dụng của mình như thể nó đã là một bảng cục bộ và chúng sẽ xuất hiện cho các trình khách như là các bảng DB2 Các tên hiệu có thể có các cột, số liệu thống kê, các chỉ mục hoặc các ràng buộc thông tin
Các nguồn dữ liệu thường yêu cầu xác thực Thông tin xác thực được đăng ký với hệ
thống liên hiệp dưới dạng các ánh xạ người dùng Điều này tạo ra một tầng bảo đảm an
toàn bổ sung ID và mật khẩu người dùng của khách hàng để truy cập cơ sở dữ liệu liên hiệp được ánh xạ tới một ID và mật khẩu người dùng từ xa
Một thủ tục liên hiệp là một thủ tục cục bộ được ánh xạ tới thủ tục nguồn dữ liệu
Về đầu trang
Kết luận
DB2 AESE là một giải pháp cơ sở dữ liệu đầy đủ trong một gói duy nhất với một giá thấp Trong nhiều khả năng và lợi ích mà nó cung cấp có tính sẵn sàng cao và các giải pháp liên tục-kinh doanh và việc quản trị được đơn giản hóa có thể giúp hợp nhất môi trường dữ liệu đa dạng cho các khách hàng bằng cách sử dụng các cơ sở dữ liệu DB2 và Oracle Sao chép chủ động/chủ động được cung cấp thông qua công nghệ sao chép Q của nó cho phép bảo vệ trước các lỗi vị trí
và sẵn sàng liên tục trong quá trình cập nhật và bảo trì Máy chủ liên hiệp đã gồm trong DB2 AESE đơn giản hoá việc tích hợp cơ sở dữ liệu cho các khách hàng di chuyển từ Oracle sang DB2 hoặc những người đang quản lý một môi trường hỗn hợp Để tìm hiểu thêm về DB2 AESE
và các khả năng mà nó cung cấp, hãy tham khảo các tài nguyên dưới đây