Các mẫu dịch vụ thông tin, Phần 2: Mẫu hợp nhất dữ liệu

Đặc tả mẫu hợp nhất dữ liệu giúp các kiến trúc sư dữ liệu và ứng dụng thực hiện các quyết định kiến trúc có đủ thông tin và cải thiện các hướng dẫn ra quyết định. Trong bài này, bạn sẽ thấy mình có thể áp dụng mẫu đó trong bối cảnh SOA như thế nào. Động cơ nghiệp vụ chính đối với mẫu hợp nhất dữ liệu, cũng được gọi là mẫu dân số dữ liệu (data population pattern), là để thu gom và hòa hợp dữ liệu từ nhiều nguồn trước khi cần đến thông tin này. Để làm như vậy, nó trích dữ liệu từ một hoặc nhiều nguồn, chuyển đổi dữ liệu đó thành các định dạng đích mong muốn và tải nó vào một số đích dữ liệu tồn tại lâu bền. Việc điền sẵn một đích dữ liệu tồn tại lâu bền là điểm phân biệt then chốt giữa mẫu này và mẫu liên hợp dữ liệu được trình bày trong Phần 1 của loạt bài này.

Dr. Guenter Sauter, Kiến trúc sư và giám đốc CNTT cao cấp, IBM Corporation

Ảnh của Guenter SauterTiến sĩ Guenter Sauter là kiến trúc sư và giám đốc CNTT cao cấp, ông lãnh đạo nhóm làm việc về các mẫu dịch vụ thông tin để giải quyết sự liên kết giữa việc quản lý thông tin và SOA. Ông cũng là kiến trúc sư trình diễn về quản lý thông tin, trình bày các khả năng trên toàn bộ danh mục Quản lý thông tin của IBM.



Bill Mathews, Kỹ sư phần mềm, IBM

Ảnh của Bill MathewsBill Mathews là một kiến trúc sư CNTT cao cấp tại IBM Financial Services Sector (Lĩnh vực dịch vụ tài chính của IBM) ở châu Mỹ và giữ vai trò lãnh đạo kiến trúc về Tích hợp thông tin. Ông đã có hơn 25 năm kinh nghiệm trong ngành CNTT và là một Kiến trúc sư CNTT có chứng chỉ xuất sắc của tập đoàn Open và có các chứng chỉ Nhà tư vấn và Kiến trúc sư CNTT của IBM. Ông hoạt động trong các lĩnh vực chuyên môn sau: tích hợp thông tin, tích hợp ứng dụng doanh nghiệp và phát triển ứng dụng Web. Bill có bằng Cử nhân khoa học về Khoa học Máy tính của trường Đại học Hofstra và bằng thạc sĩ về quản trị kinh doanh của trường Union College.



Mei Selvage, Kỹ sư phần mềm, IBM Corporation

Ảnh của Mei SelvageMei Selvage là một kiến trúc sư dữ liệu SOA có kinh nghiệm thực hành rộng trong nhiều lĩnh vực quản lý thông tin và Kiến trúc hướng dịch vụ (SOA). Cô có nhiệm vụ làm cầu nối giữa SOA và quản lý thông tin. Cô quan tâm nghiên cứu về: quản lý thông tin và các mẫu tích hợp (của dữ liệu có cấu trúc lẫn không có cấu trúc), mô hình hóa dữ liệu, siêu dữ liệu, tìm kiếm khía cạnh, sự cộng tác giữa con người và SOA.



Ernest Ostic, Chuyên gia CNTT, IBM

Ảnh của Ernest OsticErnest Ostic là chuyên gia sản phẩm tại IBM. Ông nghiên cứu sâu vào các giải pháp về tích hợp dữ liệu thời gian thực. Trước đây ông từng làm ở Ascential Software và sau đó đã làm ở IBM suốt 9 năm qua trong các vai trò khác nhau về quản lý sản phẩm và bán hàng. Ông hiện đang tham gia các chiến lược liên quan đến SOA với dòng sản phẩm Information Server (Máy chủ thông tin). Ông tốt nghiệp trường Đại học Boston.



06 05 2013

Giới thiệu

Sự tăng trưởng kinh doanh thúc đẩy các khả năng CNTT của công ty phát triển cho kịp với sự thay đổi các nhu cầu kinh doanh. Các ứng dụng mới được đưa vào để hỗ trợ các yêu cầu đổi mới. Thông tin hiện có được xử lý và phân tích theo những cách mới để đạt được sự hiểu biết tốt hơn về các thách thức kinh doanh quan trọng. Các công ty sáp nhập và mua lại các công ty khác, tiếp tục đẩy mạnh sự tăng trưởng của họ trong các lĩnh vực mới. Thật không may, toàn cảnh thông tin/dữ liệu không phải lúc nào cũng tiến triển theo cách có kiểm soát và có tổ chức chặt chẽ để hỗ trợ sự tăng trưởng này. Đã xuất hiện các ốc đảo thông tin dư thừa và thông tin không nhất quán. Các ứng dụng khác nhau biểu diễn cùng một dữ liệu theo nhiều cách khác nhau sao cho mỗi ứng dụng đạt được hiệu quả tối đa trong một lĩnh vực cụ thể.

Các công ty đang chọn dùng một Kiến trúc hướng dịch vụ ( SOA - Service-Oriented Architecture) để giải quyết nhiều thách thức, chẳng hạn như sự cần thiết phải làm giảm chi phí tích hợp hệ thống và tối ưu hóa việc sử dụng lại thông tin và chức năng hiện có. Một trong những bước quan trọng hướng tới việc chọn dùng và thực hiện SOA là nhận ra các chức năng (các dịch vụ) nghiệp vụ trọng yếu nhất và thiết kế của chúng. Mọi người thường tập trung vào các dịch vụ có thể được nhiều người tiêu dùng khác sử dụng trong và ngoài doanh nghiệp. Các dịch vụ trong phạm vi này rất có thể sẽ cần lấy ra dữ liệu từ nhiều hệ thống đa dạng mà mỗi hệ thống lại chứa những mảng thông tin cần thiết khác nhau. Ví dụ, hầu hết các công ty đều không lưu trữ thông tin của khách hàng ở một nơi duy nhất. Việc này trở thành một vấn đề quan trọng nếu không rõ có thể nhận được thông tin ở đâu và hệ thống nào chứa các thông tin hiện tại và chính xác nhất. Nếu không có kiến thức đó, không thể thực hiện một dịch vụ để trả về một tập hợp nhất quán các thông tin liên quan đến khách hàng.

Bài này mô tả mẫu hợp nhất dữ liệu như là một phương tiện để tích hợp thông tin từ nhiều nguồn khác nhau. Trước hết thu gom thông tin có liên quan từ nhiều nguồn khác nhau. Sau đó xử lý dữ liệu để giải quyết các xung đột và để tạo ra một cấu trúc chung biểu diễn mô hình đích. Cuối cùng, áp dụng thông tin đã chuyển đổi này cho một kho lưu trữ dữ liệu đích.


Tuyên bố giá trị của cách tiếp cận hợp nhất dữ liệu

Tính trong suốt của tính không đồng nhất bên dưới

Người dùng nhìn thấy chỉ một giao diện thống nhất. Ứng dụng khách hàng của mẫu không cần biết về:

  • Dữ liệu nguồn ban đầu được lưu trữ ở đâu (Tính trong suốt về vị trí).
  • Các cơ sở dữ liệu nguồn hỗ trợ giao diện lập trình hoặc ngôn ngữ nào, ví dụ, sử dụng XQuery hay SQL hoặc nguồn đó hỗ trợ ngôn ngữ SQL nào (Tính trong suốt về thực hiện).
  • Lưu trữ vật lý dữ liệu như thế nào (Tính độc lập của dữ liệu vật lý, sự phân mảnh và tính trong suốt về bản sao).
  • Sử dụng giao thức nối mạng nào (Tính trong suốt về mạng).

Hiệu năng và khả năng mở rộng quy mô

Mẫu hợp nhất dữ liệu tách nhiệm vụ tích hợp dữ liệu khỏi nhiệm vụ truy cập dữ liệu. Việc truy cập cơ sở dữ liệu đích không đòi hỏi phải thi hành một quá trình hợp nhất dữ liệu. Thông thường, theo lịch biểu quá trình hợp nhất sẽ xảy ra hàng ngày, hàng tuần và v.v -- độc lập với việc truy cập của người dùng dữ liệu đích. Vì dữ liệu cần thiết đã được thu gom tại một vị trí, nên có thể bảo đảm mức hiệu năng và khả năng mở rộng quy mô cao nhất cho những người dùng dữ liệu.

Một phiên bản sự thật duy nhất

Cách tiếp cận này áp dụng các khả năng mạnh mẽ để giải quyết các xung đột khi tích hợp dữ liệu từ các nguồn không đồng nhất. Sau đó các dịch vụ có thể rút ra từ kho hợp nhất này và thỏa mãn các yêu cầu chất lượng dữ liệu cao.

Khả năng tái sử dụng

Sau khi áp dụng mẫu hợp nhất dữ liệu cho một kịch bản tích hợp cụ thể, có thể cung cấp kết quả truy cập hợp nhất như là một dịch vụ cho nhiều người dùng dịch vụ. Ví dụ, một kịch bản tích hợp có thể yêu cầu tích hợp thông tin tài chính từ rất nhiều vùng. Khi áp dụng mẫu dữ liệu hợp nhất, dữ liệu khác nhau được hợp nhất vào một nơi duy nhất, rồi được trưng ra thông qua một bảng tài chính. Sau đó có thể sử dụng chính dữ liệu hợp nhất ấy thông qua các dịch vụ thông tin cho người dùng khác, chẳng hạn như các quy trình tự động dùng cho các đơn yêu cầu bồi thường tiêu chuẩn hoặc các ứng dụng web hướng khách hàng.

Việc quản trị được cải thiện

Quản trị là một nền tảng quan trọng cho vòng đời SOA. Các mẫu đề cao quá trình quản trị bằng cách tăng cường các hướng dẫn thực hành tốt nhất với các kết quả dự báo. Việc sử dụng lại các mẫu linh hoạt đã được kiểm chứng trong việc phát triển và tạo ra các hệ thống có thể vừa bảo đảm tính thống nhất và chất lượng lại vừa làm giảm chi phí bảo trì nhờ có một nguồn duy nhất để cập nhật những thay đổi.


Bối cảnh

Mẫu này đã được triển khai trong nhiều kịch bản theo một bối cảnh truyền thống và không-SOA trong một khoảng thời gian dài. Dựa vào việc gia tăng mối quan tâm về SOA, chúng tôi thấy có nhiều cơ hội mới để áp dụng mẫu này trong bối cảnh SOA.

Bối cảnh truyền thống, không-SOA

Các kịch bản tiêu biểu nhất đã áp dụng mẫu hợp nhất dữ liệu theo truyền thống là:

  • Di trú ứng dụng: Di trú ứng dụng diễn ra khi một hệ thống di sản hiện có -- ví dụ, một hệ thống quản lý quan hệ khách hàng (CRM) do doanh nghiệp phát triển -- cần được thay thế bằng một ứng dụng mới vì các lý do nghiệp vụ hay kỹ thuật. Hợp nhất dữ liệu hỗ trợ quá trình di trú ứng dụng để di chuyển dữ liệu từ môi trường di sản sang cơ sở dữ liệu của ứng dụng tương lai và áp dụng bất kỳ việc tái cơ cấu cần thiết nào với mô hình và chính bản thân dữ liệu.
  • Hợp nhất ứng dụng: Một trong những nhiệm vụ về hợp nhất các ứng dụng -- ví dụ, việc giảm số lượng các hệ thống hoạch định tài nguyên doanh nghiệp (ERP) xuống chỉ còn một hoặc rất ít hệ thống -- là hợp nhất các cơ sở dữ liệu bên dưới. Điều đó có nghĩa là dữ liệu từ nhiều hệ thống di sản hiện có phải được sáp nhập vào (các) cơ sở dữ liệu hợp nhất.
  • Hỗ trợ ra quyết định: Nhiều kịch bản hỗ trợ ra quyết định, ví dụ như những kịch bản xử lý phân tích và báo cáo tài chính, đòi hỏi phải truy cập vào dữ liệu phân tán trên nhiều nguồn. Chất lượng của các quyết định tùy thuộc vào chất lượng và tính toàn diện của thông tin bên dưới. Do đó, dữ liệu phân tán cần được tích hợp và tạo sẵn cho rất nhiều phân tích. Trong nhiều trường hợp, cần thực hiện các ảnh chụp nhanh (bản sao) lịch sử để đánh giá xu hướng qua một khoảng thời gian. Hợp nhất dữ liệu giúp cung cấp cho các công ty chỉ một phiên bản sự thật duy nhất từ nhiều nguồn. Một kho dữ liệu để hỗ trợ ra quyết định là một ví dụ điển hình về sử dụng một mẫu hợp nhất dữ liệu.
  • Quản lý dữ liệu chủ: Quản lý dữ liệu chủ nhằm mục đích tách thông tin chủ, theo định nghĩa là các sự thật mô tả các thực thể nghiệp vụ cốt lõi, chẳng hạn như khách hàng và sản phẩm, ra khỏi các ứng dụng riêng lẻ. Việc tạo ra dữ liệu chủ này hoặc phiên bản sự thật duy nhất, được thực hiện thông qua một tập hợp các quy tắc, các công nghệ và các giải pháp thường dùng để tạo ra và duy trì dữ liệu nghiệp vụ nhất quán, đầy đủ, theo ngữ cảnh và chính xác cho tất cả các bên liên quan đến thông tin đó. Động lực phía sau việc bắt đầu quản lý dữ liệu chủ là một tình huống trong đó dữ liệu chủ lưu trú trong nhiều hệ thống cô lập, được lưu trữ và duy trì theo các định dạng khác nhau, dẫn đến không nhất quán và không đầy đủ ở một mức cao. Để tạo ra tập hợp thông tin chính xác và nhất quán, có thể được quản lý trong một hệ thống quản lý dữ liệu chủ trung tâm, cần thu gom dữ liệu, chuyển đổi chúng thành mô hình dữ liệu chủ và hợp nhất vào kho chứa dữ liệu chủ.

Tất cả các kịch bản này đều chia sẻ một chủ đề chung:

  • Phân phối thông tin nguồn trên nhiều hệ thống tự trị và không đồng nhất.
  • Thông tin nguồn có thể tồn tại theo các định dạng không nhất quán hoặc không đầy đủ.
  • Áp dụng các quy tắc không nhất quán cho nguồn dữ liệu.
  • Tính linh hoạt để thay đổi các nguồn thông tin và các định dạng khá hạn chế.

Dữ liệu nguồn phải được hợp nhất thành một dữ liệu đích tồn tại lâu bền để giải quyết những thách thức trên bằng cách tích hợp dữ liệu thành một định dạng chung và thống nhất. Chức năng cốt lõi của mẫu hợp nhất dữ liệu giải quyết yêu cầu này thông qua ba hoạt động thành phần là thu gom (trích ra dữ liệu từ các nguồn), xử lý (chuyển đổi dữ liệu nguồn cho phù hợp với mô hình định nghĩa dữ liệu đích) và áp dụng (nạp dữ liệu đã hợp nhất và hòa hợp vào hệ thống hoặc kho lưu trữ dữ liệu đích). Điều này được minh họa trong Hình 1.

Hình 1. Mẫu hợp nhất dữ liệu truyền thống
Mẫu hợp nhất dữ liệu truyền thống

Bối cảnh SOA

Bối cảnh SOA đưa ra nhiều thách thức tương tự với bối cảnh truyền thống, do đó, chúng tôi tin rằng điều quan trọng là sử dụng lại các cách tiếp cận hiện tại đã được kiểm chứng và tăng cường chúng để áp dụng chúng trong SOA.

Trường hợp sử dụng SOA đầu tiên:

Trường hợp sử dụng SOA đầu tiên là một phần kịch bản mở rộng đã được mô tả trong ngữ cảnh truyền thống ở trên. Trong trường hợp sử dụng này, quá trình hợp nhất với dữ liệu đích bây giờ được trưng ra như là một dịch vụ. Ví dụ, một giải pháp quản lý dữ liệu chủ có thể được tập trung xoay quanh thông tin các bộ phận xe hoặc thông tin của cả chiếc xe tại một xưởng sản xuất ô tô. Do tầm quan trọng của thông tin bộ phận xe/cả chiếc xe, nên nhiều người dùng sẽ cần truy cập dữ liệu từ một hệ thống quản lý dữ liệu chủ hợp nhất. Một dịch vụ như getVehicleData sẽ tạo một cá thể của mẫu hợp nhất để thực hiện một dịch vụ có thể tái sử dụng. Sau đó, các nhân viên của doanh nghiệp hay các nhà phân phối các bộ phận xe bên ngoài doanh nghiệp chẳng hạn, có thể truy cập dịch vụ này trong toàn doanh nghiệp hay bên ngoài doanh nghiệp.

Việc trưng ra thông tin này thông qua các dịch vụ làm tăng thêm khả năng tái sử dụng cách thực hiện này và do đó có thể làm giảm chi phí vận hành và những điểm không nhất quán liên quan đến nguồn gốc, chuyển đổi và biến đổi theo các định dạng nguồn, điều này đã được giới thiệu trước đây, khi nhiều người dùng (những người thực hiện các hệ thống dữ liệu đích) cần thực hiện nhiệm vụ tích hợp này một cách riêng lẻ và dư thừa. Theo cách tiếp cận SOA, ESB (Enterprise Service Bus) đứng trung gian xử lý các thông điệp (yêu cầu và đáp ứng của dịch vụ) giữa nhiều người tiêu dùng và nhà cung cấp dịch vụ thông tin, như minh họa trong Hình 2, do đó cho phép thực hiện dịch vụ một cách nhất quán và đúng chuẩn.

Hình 2. SOA truy cập vào dữ liệu hợp nhất
Sự truy cập của SOA vào dữ liệu hợp nhất

Để hỗ trợ thực hiện các dịch vụ tích hợp thông tin trong một SOA đòi hỏi có chức năng bổ sung bao gọn việc truy cập thông tin trong một giao diện hướng dịch vụ. Điều này được thực hiện thông qua thành phần information service enablement (hỗ trợ dịch vụ thông tin). Mục đích của thành phần này là trưng ra dữ liệu hợp nhất trong một giao diện hướng dịch vụ. Ví dụ, có thể lưu trữ dữ liệu xe nguyên chiếc đã hợp nhất trong một cơ sở dữ liệu quan hệ. Qua thành phần hỗ trợ dịch vụ thông tin, có thể trưng ra dữ liệu xe nguyên chiếc theo mô hình quan hệ này như là một dịch vụ -- được định nghĩa bởi Service Component Architecture (SCA - Kiến trúc thành phần dịch vụ) hay Web Services Definition Language (WSDL – Ngôn ngữ định nghĩa dịch vụ Web) chẳng hạn. Rồi sau đó có thể chia sẻ dịch vụ để thực hiện truy cập dữ liệu xe nguyên chiếc trong và ngoài doanh nghiệp.

Trường hợp sử dụng SOA thứ hai:

Trường hợp sử dụng SOA thứ hai minh họa một tình huống trong đó một người dùng gọi ra quá trình hợp nhất. Theo truyền thống, quá trình hợp nhất chạy theo một lịch biểu thời gian tương đối cố định, thông thường nhất là trong các cửa sổ thời gian bảo trì, trên cơ sở hàng tuần hoặc hàng ngày. Việc hợp nhất được tách khỏi quy trình nghiệp vụ thường chạy theo một lịch biểu thời gian ít cứng nhắc hơn. Trong bối cảnh SOA, một bước nào đó trong một quy trình nghiệp vụ hoặc một ứng dụng có thể gọi trực tiếp quá trình hợp nhất. Hai ví dụ về trường hợp sử dụng này là:

  • "Refresh my DataMart Now" có thể là một button có sẵn dành cho nhà phân tích kinh doanh, người chỉ muốn cập nhật thông tin "khi cần đến". Việc làm mới tự động sẽ gây ra nhiều vấn đề không lường trước bởi vì với dữ liệu tài chính thì cần phải thực hiện việc phân tích đúng thời điểm. Các bản cập nhật sẽ chỉ là "thời gian thực" như được ấn định bởi các chuyên gia chuyên ngành -- không nhất thiết phải đợi đến lúc khả thi về mặt kỹ thuật. Việc gọi quá trình hợp nhất dữ liệu thông qua một button như vậy cung cấp một giải pháp cho yêu cầu này.
  • Một công ty dược phẩm lớn sử dụng mô hình hợp nhất dữ liệu trong một bối cảnh SOA để hỗ trợ việc thu thập và xem xét các số liệu thống kê kiểm nghiệm của phòng thí nghiệm từ xa. Việc tiêu chuẩn hóa thu thập dữ liệu trong phòng thí nghiệm sẽ giúp rút ngắn vòng đời vốn đã dài và tốn kém của các sản phẩm dược phẩm. Trong ứng dụng về mô hình này, các phòng thí nghiệm riêng lẻ gọi một dịch vụ hợp nhất mỗi khi họ đã chèn chi tiết nghiên cứu vào một hệ thống giao dịch cô lập và đặt các dữ liệu đồ họa (các bản trình chiếu và các tệp JPG) vào một thư mục trung tâm để phê duyệt. Dịch vụ hợp nhất thu thập các số liệu thống kê từ một phòng thí nghiệm cụ thể và lưu trữ chúng trong hệ thống theo dõi tập trung của công ty. Các số liệu thống kê được tạo ra bằng nhiều công cụ khác nhau, mỗi công cụ có một kho lưu trữ dữ liệu duy nhất. Trước khi triển khai mô hình, nhiều hệ thống thủ công trên giấy và điện tử do công ty xây dựng, đã thu thập chẳng mấy hiệu quả các số liệu thống kê và các tư liệu hỗ trợ.

Hình 3 minh họa làm thế nào mà một hoạt động theo quy trình nghiệp vụ (được gọi là "invoke" như trong hình) gửi một yêu cầu -- có thể thông qua một ESB nếu muốn -- tới thành phần thực hiện hỗ trợ dịch vụ thông tin. Thành phần này nhận yêu cầu dịch vụ và gọi ra (invoke) quá trình hợp nhất. Sau đó, thu gom dữ liệu từ các nguồn, rồi xử lý chúng và áp dụng kết quả cho hệ thống đích.

Hình 3. Các quá trình hợp nhất dữ liệu có thể truy cập và có thể tái sử dụng của SOA
Các quá trình hợp nhất dữ liệu có thể truy cập và có thể sử dụng lại của SOA

Trường hợp sử dụng SOA thứ ba:

Trường hợp sử dụng SOA thứ ba là một sự kết hợp của hai mẫu: hợp nhất dữ liệu và xuất bản dữ kiện hoặc thay đổi việc bắt giữ dữ liệu, như trong Hình 4.

Hình 4. Hợp nhất dữ liệu kết hợp với việc xuất bản dữ kiện
Hợp nhất dữ liệu kết hợp với việc xuất bản sự kiện dữ liệu

Nhiều công ty gặp thách thức khi muốn quản lý hàng tồn kho có hiệu quả. Một phần của vấn đề là thông tin liên quan đến hàng tồn kho nằm trong nhiều cơ sở dữ liệu không đồng nhất. Tuy nhiên, để tối ưu hóa hàng tồn kho, thông tin này cần truy cập theo cách tích hợp và nhất quán. Ví dụ, cần giải quyết vấn đề về cùng một bộ phận phụ tùng lại có nhiều mã số khác nhau khi hợp nhất thông tin để truy cập và phân tích hàng tồn kho. Một số thông tin liên quan đến hàng tồn kho sẽ liên tục thay đổi -- ví dụ, với các sản phẩm có nhu cầu cao -- trong khi dữ liệu khác lại không thay đổi. Tình trạng này đòi hỏi phải hợp nhất thông tin phân tán, không đồng nhất và liên tục thay đổi vào một kho lưu trữ duy nhất.

Việc xuất bản dữ kiện và "việc cấp từ từ" dữ liệu đến một kho lưu trữ dữ liệu đích là một bối cảnh quan trọng khác để áp dụng mẫu hợp nhất dữ liệu. Có một số động lực chính để sử dụng phương pháp này là:

  • Các hệ thống dữ liệu đích được đồng bộ hóa với các nguồn theo cách gần thời gian thực. Điều này có thể quan trọng đối với các ứng dụng hỗ trợ ra quyết định hoặc các hệ thống vận hành hợp tác. Những người dùng hệ thống dữ liệu đích thấy kết quả ngay lập tức.
  • Mẫu này ngăn ngừa sự cần thiết phải có các quá trình quét lâu dài các hệ thống nguồn trong cửa sổ thời gian xử lý theo từng gói. Các quá trình quét như vậy có thể làm giảm hiệu năng của nguồn, ảnh hưởng đến các ứng dụng khác.
  • Chỉ có thông tin "thay đổi" được gửi qua mạng và trải qua các quá trình chuyển đổi toàn diện, nhờ đó làm giảm gánh nặng cho mạng và các hệ thống thực hiện thao tác.

Đặt vấn đề

Những người dùng SOA yêu cầu một dịch vụ cần phải truy cập thông tin từ nhiều nguồn không đồng nhất. Các nguồn đã được thiết kế, phát triển và tiến hóa độc lập, do đó chúng có các cách biểu diễn khác nhau đáng kể với cùng một kiểu dữ liệu. Tính không đồng nhất có thể xảy ra ở một mức cá thể -- chẳng hạn như thiếu một khóa chung (do các định dạng khác nhau) hoặc ở một mức mô hình -- ví dụ, mô hình hóa cùng một thực thể trong thế giới thực thành một số các thực thể cơ sở dữ liệu khác nhau. Những người dùng SOA không thể thấy được tính không đồng nhất bên dưới này nhưng phải có khả năng truy cập thông tin tích hợp một cách trong suốt.

Nhiều tình huống có áp dụng mẫu này đòi hỏi thông tin tích hợp phải có một mức sẵn sàng cao. Thông thường, các hệ thống nguồn bị hạn chế bởi việc sử dụng tài nguyên và tính linh hoạt trong các thay đổi ứng dụng bị hạn chế. Đồng thời, cần thực hiện các hoạt động xử lý dữ liệu khá phức tạp để cung cấp các dịch vụ được yêu cầu.


Các mục tiêu của giải pháp

Các mục tiêu là:

  • Tích hợp thông tin từ các nguồn có thể có tính không đồng nhất ở một mức cao và hỗ trợ truy cập chỉ-đọc tới thông tin tích hợp này với tính sẵn dùng, khả năng mở rộng quy mô và hiệu năng của dữ liệu ở một mức cao.
  • Cung cấp các khả năng chuyển đổi rộng lớn để giải quyết các xung đột giữa các nguồn và để cơ cấu lại dữ liệu nguồn thành một chế độ dữ liệu đích mong muốn.
  • Tách truy cập vào dữ liệu đích tích hợp ra khỏi quá trình tích hợp và chuyển đổi dữ liệu từ các nguồn thành dữ liệu đích để cho phép khả năng mở rộng quy mô và hiệu năng.

Cho phép các kịch bản đòi hỏi phải cập nhật dữ liệu hợp nhất, chẳng hạn như các hệ thống quản lý dữ liệu chủ vận hành, để kết hợp mẫu này với các cách tiếp cận khác thực hiện lan truyền các thay đổi trong hệ thống dữ liệu đích trở lại các nguồn và do đó duy trì đồng bộ các hệ thống đó.


Mô tả giải pháp

Cách tiếp cận hợp nhất dữ liệu có ba giai đoạn chính. Trong giai đoạn đầu tiên máy chủ hợp nhất -- thành phần thực hiện mẫu hợp nhất dữ liệu -- thu gom (hoặc "trích ra") dữ liệu từ các nguồn. Tiếp theo, tích hợp và chuyển đổi dữ liệu nguồn cho phù hợp với mô hình dữ liệu đích, có thể trong nhiều hoạt động. Cuối cùng, máy chủ hợp nhất áp dụng dữ liệu đã chuyển đổi cho kho lưu trữ dữ liệu đích.

Quá trình này có thể chạy (lặp lại) theo một lịch biểu thời gian hoặc có thể gọi nó (nhiều lần) như là một dịch vụ từ một quy trình nghiệp vụ hay bất kỳ người dùng dịch vụ nào khác. Sau khi nạp vào hoặc làm mới dữ liệu tích hợp trong mô hình dữ liệu đích, có thể trưng ra thông tin hợp nhất như là một dịch vụ cho những người dùng.

Các đặc điểm thời gian thiết kế

Nhiệm vụ trọng tâm trong thời gian thiết kế là chỉ rõ luồng dữ liệu từ các nguồn tới đích -- đó là, làm thế nào để tái cấu trúc và sáp nhập các mô hình nguồn vào mô hình đích. Giả định rằng khi áp dụng mẫu hợp nhất dữ liệu, quản trị viên hoặc nhà phát triển luồng dữ liệu đã có một sự hiểu biết chi tiết về các giao diện truy cập có sẵn tới các nguồn, ngữ nghĩa và tính đúng đắn của mô hình dữ liệu nguồn và những ràng buộc về tính toàn vẹn của nó. Cũng giả định rằng mô hình dữ liệu đích đã được định nghĩa. Nếu các giả định ấy không đúng, cần phải kết hợp mẫu hợp nhất với các cách tiếp cận khác, chẳng hạn như lược tả dữ liệu và mô hình hóa dữ liệu, để giải quyết những vấn đề còn để mở này.

Dựa trên những giả định đó, nhà phát triển định nghĩa tập hợp các hoạt động có thể chuyển đổi dữ liệu nguồn thành dữ liệu đích tương ứng với các mô hình nguồn và mô hình đích. Các việc thực hiện mẫu này thay đổi trong phạm vi của các hoạt động chuyển đổi được hỗ trợ và những hoạt động đó có thể mở rộng ra sao. Nhiều việc thực hiện hướng tới sử dụng một tập hợp các hoạt động tiêu biểu nhất, chẳng hạn như tra tìm, các phép nối và các bộ lọc. Nhiều việc thực hiện bổ sung tạo ra các cơ cấu mạnh mẽ để mở rộng tập hợp các hoạt động này cho các nhu cầu riêng của khách hàng hay đặc trưng cho dự án. Khi sử dụng những khả năng của hoạt động này trong giai đoạn thiết kế, có thể định nghĩa luồng dữ liệu (có nghĩa là, chuỗi các hoạt động chuyển đổi và xử lý dữ liệu đó). Rồi triển khai đặc tả luồng dữ liệu này tới máy chủ hợp nhất và kiểm soát dữ liệu nào được trích ra, được chuyển đổi thế nào và được áp dụng cho mô hình đích ra sao.

Đặc tả luồng dữ liệu là một kiểu siêu dữ liệu đặc biệt. Việc kết hợp siêu dữ liệu này với siêu dữ liệu liên quan khác có thể hỗ trợ các ứng dụng khác (nằm ngoài phạm vi của mẫu này) chẳng hạn như phân tích ảnh hưởng và bảng chú giải thuật ngữ nghiệp vụ.

Nhiều việc thực hiện mẫu hợp nhất – cụ thể hơn là thực hiện thành phần hỗ trợ dịch vụ thông tin (xem Hình 2) -- thay đổi theo mức hỗ trợ công cụ và các tùy chọn cấu hình để giúp quản trị viên hoặc nhà phát triển trong việc tạo ra một giao diện dịch vụ để chạy quá trình hợp nhất.

Chức năng của thành phần hỗ trợ dịch vụ thông tin cũng có thể giúp ánh xạ một giao diện dịch vụ tới một truy vấn để truy cập dữ liệu trong cơ sở dữ liệu hợp nhất.

Thời gian chạy (Run time)

Máy chủ hợp nhất thực hiện đặc tả luồng dữ liệu đã định nghĩa trong thời gian thiết kế. Việc chạy quá trình hợp nhất dữ liệu được bắt đầu dựa trên một lịch biểu thời gian đã định hoặc thông qua việc chạy dịch vụ. Bước đầu tiên trong quá trình hợp nhất này là truy cập các hệ thống nguồn để thu gom thông tin có liên quan. Thông thường, các máy chủ hợp nhất sử dụng một tập hợp các đầu nối đặc trưng của nguồn, cũng có thể được gọi là các trình bao bọc (wrapper). Mỗi đầu nối được thiết kế cho một kiểu nguồn cụ thể -- ví dụ như DB2 hoặc Oracle -- để thu gom thông tin và xử lý các đặc điểm giao diện đặc trưng cho nguồn có hiệu quả nhất. Vì lý do đó, các đầu nối hỗ trợ các giao diện khác nhau đối với các nguồn và cung cấp một giao diện chung cho máy chủ hợp nhất cốt lõi.

Sau khi thu gom dữ liệu thông qua các đầu nối, nhiệm vụ chính của máy chủ hợp nhất là xử lý dữ liệu theo đặc tả luồng dữ liệu. Máy chủ hợp nhất phân giải các xung đột giữa các luồng dữ liệu nguồn, nối dữ liệu với nhau hoặc chia tách nó ra thành từng phần, chuyển đổi dữ liệu tương ứng với mô hình đích và có thể xử lý dữ liệu bằng cách tra tìm thêm với các nguồn khác. Là một phần của quá trình này, dữ liệu được thu gom từ các bnguồn và đang được chuyển đổi có thể cần được duy trì tạm thời trong các vùng được gọi là các vùng trung gian.

Một khi cấu trúc dữ liệu đã xử lý phù hợp với mô hình đích, máy chủ hợp nhất áp dụng dữ liệu cho mô hình đích, có thể sử dụng lại một lần nữa các đầu nối đặc trưng cho mô hình đích.

Mặc dù một máy chủ hợp nhất có thể xử lý các bản ghi duy nhất, hầu hết các việc thực hiện đều được nhắm vào việc di chuyển một số lượng lớn dữ liệu từ nhiều nguồn khác nhau tới một hoặc nhiều mô hình đích. Việc này thường được gọi là di chuyển dữ liệu gói. Một số sản phẩm thực hiện mẫu này đã khai thác chế độ song song để xử lý dữ liệu hiệu quả hơn.


Những việc cần xem xét

Khi áp dụng mẫu hợp nhất dữ liệu, điều quan trọng cần hiểu xem mẫu đó ảnh hưởng đến các yêu cầu phi chức năng sau đây như thế nào.

Bảo mật dữ liệu

Cấu hình bảo mật trong cơ sở dữ liệu đích -- các dịch vụ được định nghĩa trên đó -- là độc lập với các nguồn. Như chúng ta đã đề cập trước đây, mẫu này thường được áp dụng để di chuyển dữ liệu trong chế độ theo gói/theo nhóm từ các nguồn tới cơ sở dữ liệu đích. Quá trình này thường được áp dụng cho tập hợp dữ liệu đầy đủ trong các nguồn -- có nghĩa là, không có các hạn chế nào về bảo mật. Thông thường, cơ sở dữ liệu đích được tạo ra khi áp dụng mẫu hợp nhất lần đầu tiên, do đó không có sẵn bất kỳ việc kiểm soát quyền truy cập nào và có thể cần định nghĩa việc kiểm soát này. Mỗi nguồn dữ liệu có thể có những hạn chế bảo mật của riêng mình, có thể cần phải giải quyết những hạn chế đó để cho phép truy cập và lấy ra dữ liệu một cách thích hợp.

Do tính chất không đồng nhất và phân tán của môi trường này, nên có một số thách thức liên quan đến việc đăng nhập một lần và kiểm soát truy cập chung có thể phát sinh nằm ngoài phạm vi của mẫu hợp nhất dữ liệu. Để giải quyết những thách thức đó, các kiến trúc sư sẽ cần kết hợp mẫu hợp nhất dữ liệu với các mẫu liên quan đến bảo mật.

Độ trễ của dữ liệu

Thông thường, độ trễ của dữ liệu hoặc sự lưu thông của dữ liệu phụ thuộc vào chu kỳ làm mới của quá trình hợp nhất dữ liệu.

Về mặt lịch sử, có thể khởi động quá trình hợp nhất dữ liệu theo một lịch biểu thời gian trên cơ sở định kỳ, chẳng hạn như hàng tuần hoặc hàng ngày. Sau khi áp dụng dữ liệu hợp nhất cho cơ sở dữ liệu đích, theo truyền thống sẽ không làm mới dữ liệu này trước chu kỳ tiếp theo. Gần đây, người ta đã cải thiện vấn đề độ trễ này bằng việc sắp xếp giai đoạn hợp nhất với quy trình nghiệp vụ thích hợp. Như thể hiện trong Hình 3, một hoạt động trong một quy trình nghiệp vụ hoặc một ứng dụng có thể gọi quá trình hợp nhất. Việc này cho phép làm mới dữ liệu hợp nhất thông qua một dịch vụ ngay trước khi cần sử dụng dữ liệu đó.

Việc kết hợp mẫu hợp nhất dữ liệu với mô hình xuất bản sự kiện dữ liệu, như thể hiện trong Hình 4, tiếp tục cải thiện sự lưu thông của dữ liệu. Cần bắt giữ các thay đổi trong các nguồn khi chúng xảy ra và sau đó ngay lập tức hợp nhất chúng vào cơ sở dữ liệu đích.

Tính dễ thay đổi của dữ liệu nguồn

Dữ liệu trong các nguồn càng hay thay đổi giữa các chu kỳ làm mới của quá trình hợp nhất, thì dữ liệu càng trở nên cũ hơn tại đích. Để tăng tính nhất quán giữa dữ liệu nguồn và dữ liệu đích, các thay đổi của nguồn có thể kích hoạt để thực hiện giai đoạn hợp nhất thông qua việc xuất bản dữ kiện. Ngoài ra, có thể gọi quá trình hợp nhất thông qua một ứng dụng hoặc một hoạt động trong một quy trình nghiệp vụ có biết đến các thay đổi nguồn. Tuy nhiên, một chu kỳ làm mới thường xuyên hơn có thể có ảnh hưởng tiêu cực đến việc sử dụng tài nguyên. Cụ thể là nếu không phối hợp chu kỳ này với các yêu cầu của ứng dụng khách hàng, thì có thể thường xuyên làm mới dữ liệu đích trong khi nó vẫn chưa được dùng, dẫn đến việc sử dụng tài nguyên kém hiệu quả.

Tính nhất quán và chất lượng của dữ liệu

Cách tiếp cận hợp nhất có lợi thế đặc biệt đối với việc cung cấp các cơ cấu mạnh mẽ để có thể giải quyết các tình huống trong đó dữ liệu nguồn có chất lượng và tính nhất quán dữ liệu ở một mức thấp. Các hoạt động làm sạch, tiêu chuẩn hoá và chuyển đổi dữ liệu phức tạp chỉ làm kéo dài thời gian của quá trình hợp nhất, nhưng không ảnh hưởng đến thời gian đáp ứng hoặc khả năng mở rộng quy mô của yêu cầu dịch vụ với dữ liệu đích.

Tính sẵn dùng của dữ liệu

Tính sẵn dùng của dữ liệu tích hợp trong hệ thống đích chỉ phụ thuộc vào tính sẵn sàng của hệ thống đích, chẳng hạn như một cơ sở dữ liệu. Quá trình hợp nhất dữ liệu và điền nó vào hệ thống đích được tách ra khỏi luồng yêu cầu khi một người dùng truy cập dữ liệu trong hệ thống đích. Theo quan điểm của người dùng, việc truy cập dữ liệu hợp nhất trong hệ thống đích có các đặc điểm về tính sẵn dùng giống như khi truy cập bất kỳ dữ liệu nào khác trong hệ thống này. Vì vậy, có thể áp dụng bất kỳ các cách tiếp cận nào để làm tăng tính sẵn dùng của dữ liệu trong lúc kết hợp với mẫu hợp nhất dữ liệu. Do sự hợp nhất dữ liệu chỉ có một đích duy nhất, nên việc áp dụng công nghệ để cải thiện tính sẵn dùng tương đối dễ dàng -- như việc phân cụm chẳng hạn. Mẫu này là một cách tiếp cận được ưa thích nếu bắt buộc dữ liệu phải có tính sẵn dùng cao.

Ảnh hưởng của các thay đổi mô hình đến mô hình tích hợp

Khi thay đổi bất kỳ trong số các mô hình nguồn nào, đặc tả luồng dữ liệu và có lẽ cả mô hình đích sẽ cần được điều chỉnh. Nếu cần sửa đổi mô hình đích, thì dữ liệu đích sẽ cần được điều chỉnh cho phù hợp. Tùy thuộc vào các thay đổi cần thiết, việc này có thể có ảnh hưởng rất ít hoặc rất nhiều đến tính sẵn sàng của dịch vụ.

Tần suất thực hiện giao dịch

Tần suất của các yêu cầu dịch vụ đối với cơ sở dữ liệu đích hợp nhất chỉ được xác định bằng khả năng của cơ sở dữ liệu đích và thành phần hỗ trợ dịch vụ thông tin để xử lý những yêu cầu đó. Do cơ sở dữ liệu đích được tạo ra chuyên để hỗ trợ những yêu cầu dịch vụ đó, nên mẫu này là một cách tiếp cận ưa thích cho các yêu cầu thực hiện giao dịch rất thường xuyên.

Khả năng của chính máy chủ hợp nhất để chạy một giao dịch chuyển dữ liệu ở tốc độ cao được xác định bằng tốc độ mà máy chủ hợp nhất có thể truy cập các hệ thống nguồn và các hệ thống nguồn có thể đáp ứng để cung cấp dữ liệu. Do cách tiếp cận tách rời mà chúng ta đã thảo luận ở trên, điều này không ảnh hưởng đến tần suất có thể thực hiện các yêu cầu dịch vụ đối với cơ sở dữ liệu đích.

Sự tương tranh của giao dịch

Các đặc điểm hiệu năng của máy chủ cơ sở dữ liệu đích quyết định việc quản lý hiệu quả truy cập tương tranh. Điều này là do cách tiếp cận tách rời của mô hình này.

Hiệu năng/Thời gian đáp ứng giao dịch

Các đặc điểm của máy chủ cơ sở dữ liệu đích quyết định chính đến thời gian đáp ứng giao dịch của một yêu cầu dịch vụ đối với cơ sở dữ liệu đích hợp nhất. Điều này là do cách tiếp cận tách rời của mô hình này.

Lược tả Tạo-Đọc-Cập nhật-Xóa

Mẫu hợp nhất dữ liệu di chuyển dữ liệu chỉ theo một hướng từ các nguồn đến đích. Các thay đổi bên ngoài đến kho lưu trữ dữ liệu đích nằm ngoài phạm vi của mẫu này. Như vậy mẫu này sẽ không truyền các thay đổi quay trở về nguồn và các thay đổi có thể bị ghi đè trong chu kỳ làm mới tiếp theo của cơ sở dữ liệu đích. Vì vậy, thường chỉ áp dụng mẫu này trong các tình huống ở đó việc truy cập chỉ đọc đến cơ sở dữ liệu đích là đủ.

Khối lượng dữ liệu cho mỗi giao dịch

Dữ liệu được trưng ra trong yêu cầu dịch vụ với kho lưu trữ dữ liệu đích hợp nhất được lấy ra trực tiếp từ cơ sở dữ liệu đích. Do đó, chỉ có máy chủ cơ sở dữ liệu đích quyết định các đặc điểm hiệu năng của cách tiếp cận này.

Quá trình hợp nhất để di chuyển dữ liệu từ các nguồn đến cơ sở dữ liệu đích được thiết kế để hỗ trợ một khối lượng dữ liệu lớn. Do bản chất tách rời của cách tiếp cận này, nên có thể xử lý hiệu quả các yêu cầu dịch vụ tới cơ sở dữ liệu đích ngay cả với các khối lượng dữ liệu lớn. Điều này cũng đúng cho chính quá trình di chuyển dữ liệu.

Thời gian phân phối giải pháp

Nhiều việc thực hiện sản phẩm của mẫu hợp nhất dữ liệu thường cung cấp sự hỗ trợ công cụ rất tinh vi để xác định các ánh xạ (các luồng dữ liệu) giữa các nguồn và đích. Nhiều việc thực hiện trong số các việc thực hiện này đã định nghĩa trước các hoạt động (các luồng dữ liệu) để dùng ngay được với các sản phẩm. Điều này cho phép người thực hiện áp dụng cách tiếp cận này có hiệu quả trong một khoảng thời gian ngắn.

Tuy nhiên, người ta thường áp dụng mẫu này khi các nguồn dữ liệu có sự khác biệt đáng kể về cấu trúc dữ liệu cần được tích hợp. Điều này có thể yêu cầu cải tiến nhiều vòng đặc tả luồng dữ liệu và áp dụng đặc tả đó trong các môi trường thử nghiệm để chứng minh tính đúng đắn. Các công ty có thể trải nghiệm các chu kỳ phát triển tương đối dài khi áp dụng cách tiếp cận này -- không phải do các đặc điểm của cách tiếp cận này mà do các đặc điểm của vấn đề.

Tập hợp kỹ năng và kinh nghiệm

Hầu hết các việc thực hiện hiện có của mẫu hợp nhất đều có một cách tiếp cận dùng công cụ, đòi hỏi phải có kiến thức đặc trưng về sản phẩm khi định nghĩa ánh xạ. Các nhà phát triển cần hiểu rõ các cách tiếp cận riêng của sản phẩm này. Họ cũng cần có kiến thức về các khái niệm cơ sở dữ liệu hoặc kinh nghiệm của Quản trị viên cơ sở dữ liệu (DBA) để hiểu các hậu quả đối với cơ sở dữ liệu nguồn và cơ sở dữ liệu đích khi thiết kế giải pháp này. Khi trưng ra thông tin tích hợp như là các dịch vụ, các nhà phát triển cũng cần hiểu các khái niệm, các tiêu chuẩn và các công nghệ SOA.

Khả năng tái sử dụng

Có thể sử dụng lại logic và siêu dữ liệu đã dùng để định nghĩa truy cập và tổng hợp dữ liệu trên các dự án khác nhau.

Chi phí về bảo trì nhiều nguồn dữ liệu

Sau khi hợp nhất dữ liệu, có thể hoặc giữ nguyên các nguồn dữ liệu ban đầu hoặc rút bỏ các nguồn một khi đã di chuyển dữ liệu đến hệ thống đích trong trường hợp di trú dữ liệu. Như đã mô tả trong các trường hợp sử dụng (phần Bối cảnh), hệ thống đích mới này thường đáp ứng các yêu cầu nghiệp vụ bổ sung như cung cấp một phiên bản sự thật duy nhất và sự hiểu biết thêm. Khi sử dụng mẫu này để di trú khỏi (có nghĩa là thay thế) các hệ thống di sản hiện có, việc di chuyển -- và có thể là việc hợp nhất -- dữ liệu chỉ là một bước trong toàn bộ quá trình di trú. Toàn bộ quá trình di trú cũng cần giải quyết việc di trú của logic nghiệp vụ và logic ứng dụng, chẳng hạn. Mặc dù mẫu hợp nhất dữ liệu không thể một mình giải quyết vấn đề di trú ứng dụng, nhưng nó là một thành phần quan trọng theo nghĩa là nó có thể di chuyển dữ liệu từ hệ thống di sản sang nền tảng tương lai. Sau khi đã hoàn thành toàn bộ quá trình di trú, gồm dữ liệu, logic và các quy trình, có thể làm giảm chi phí bảo trì nhiều nguồn dữ liệu bằng cách loại bỏ (các) hệ thống di sản.

Nếu một trong những mục tiêu của dự án để thực hiện hoặc sử dụng mô hình này là tạo ra một kho lưu trữ dữ liệu mới, thì chi phí tăng thêm có thể gắn với việc quản lý kho lưu trữ dữ liệu mới. Tuy nhiên, đó không phải là một tác dụng phụ của việc thực hiện mẫu này, mà là kết quả của dự án lớn hơn có thể sử dụng mẫu này.

Chi phí phát triển

Các chi phí phát triển phụ thuộc phần lớn vào tính phức tạp của nhiệm vụ tích hợp. Các chi phí có thể thấp nếu các nguồn dữ liệu có các mô hình dữ liệu tương tự và chỉ cần các hoạt động chuyển đổi đơn giản. Ánh xạ giữa các nguồn và đích càng trở nên phức tạp bao nhiêu, thì các chi phí phát triển thực hiện càng cao bấy nhiêu, vì nó gắn liền với các chu kỳ phát triển và thử nghiệm nhiều vòng cần thiết để giải quyết tính phức tạp.

Kiểu các mô hình đích

Mẫu hợp nhất dữ liệu không đòi hỏi một mô hình dữ liệu đích cụ thể. Trong bài này, chúng tôi đã tập trung vào mẫu hợp nhất dữ liệu cho dữ liệu có cấu trúc. Hầu hết dữ liệu có cấu trúc hiện nay đều được duy trì trong các hệ thống quan hệ. Vì vậy, hầu hết các việc triển khai của mẫu này di chuyển dữ liệu đến một cơ sở dữ liệu quan hệ đích.

Đơn vị logic trong công việc / phân phối đảm bảo

Mặc dù cách tiếp cận hợp nhất không ngăn cấm việc phân phối đảm bảo, nhưng hầu hết các việc thực hiện mẫu hợp nhất dữ liệu hiện tại không bảo đảm việc phân phối dữ liệu giữa nguồn và đích. Nếu vì một lý do nào đó, quá trình hợp nhất bị gián đoạn, chẳng hạn do lỗi của máy chủ, một số dữ liệu có thể đã được di chuyển, một đang trong quá trình được di chuyển và một số có thể không được di chuyển. Hệ thống sẽ hoặc có khả năng khởi động lại tại điểm có lỗi hoặc có logic bù trừ để cho phép xóa bỏ các cập nhật chưa xong. Như trong bất kỳ tình huống lỗi nào, dù là SOA hay không, thì việc này không loại bỏ được yêu cầu là các kiến trúc sư, các quản trị viên và các nhà phát triển sẽ phải phân tích nguyên nhân gốc rễ và xác định quy trình phục hồi trong một số trường hợp.

Sử dụng tài nguyên

Máy chủ hợp nhất sử dụng tài nguyên -- đó là, năng lực xử lý trên máy chủ hợp nhất, máy chủ nguồn và dung lượng mạng -- khi nó di chuyển dữ liệu từ các nguồn đến đích. Sự phức tạp của các chuyển đổi, số lượng các nguồn cần được truy cập và khối lượng dữ liệu cần được xử lý sẽ xác định mức sử dụng tài nguyên.

Các khả năng chuyển đổi

Việc thực hiện mẫu hợp nhất cần xử lý nhu cầu giải quyết hầu như bất kỳ sự khác biệt nào về cấu trúc giữa dữ liệu nguồn và dữ liệu đích. Một kết quả quan trọng của các chuyển đổi rất phức tạp là một quá trình di chuyển dữ liệu bị kéo dài do việc xử lý chuyển đổi phức tạp.

Kiểu mô hình nguồn, các giao diện, các giao thức

Hợp nhất dữ liệu giải quyết vấn đề tích hợp dữ liệu từ các mô hình nguồn không đồng nhất và đưa vào các kỹ thuật để ánh xạ các mô hình nguồn khác nhau đó vào mô hình chung ở đích. Các việc thực hiện sản phẩm của mẫu hợp nhất dữ liệu thay đổi khác nhau tùy theo phạm vi các mô hình nguồn mà chúng có thể tích hợp, nhưng chủ yếu là, mẫu hợp nhất dữ liệu loại bỏ sự phức tạp của các mô hình nguồn, các giao diện và các giao thức sao cho các nhà phát triển chỉ cần quan tâm đến một mô hình, một giao diện và một giao thức mà thôi.

Phạm vi / kích cỡ của các mô hình nguồn

Kích cỡ của các mô hình nguồn, số lượng và kiểu của các thuộc tính và sự phức tạp của định nghĩa chuyển đổi có thể tốn nhiều thời gian của các nhà phân tích, kiến trúc sư và người triển khai thực hiện. Những yếu tố này có thể ảnh hưởng đến thời gian cần thiết để thực hiện mẫu này cũng như thời gian và tài nguyên để thực hiện hợp nhất. Các hướng dẫn thực hành để định nghĩa và điều chỉnh quy mô của dự án tiêu chuẩn cần giải quyết mức độ phức tạp gắn liền với các phép chuyển đổi dữ liệu khi đánh giá sự nỗ lực, khoảng thời gian và chi phí liên quan đến thực hiện dự án.

Ảnh hưởng của tải công việc của máy chủ hợp nhất (khối lượng giao dịch) đến các nguồn

Cần thực hiện một phân tích ảnh hưởng trên các hệ thống nguồn để hiểu rõ ảnh hưởng của các yêu cầu về các mức dịch vụ mà các nguồn này đã được cam kết cung cấp. Đây sẽ là một bước tiêu chuẩn trong phương pháp luận phát triển và không phải là duy nhất với việc thực hiện này. Có thể phối hợp quá trình di chuyển này sao cho nó có ảnh hưởng tối thiểu đến các nguồn, ví dụ như trong các cửa sổ thời gian dành cho bảo trì, để giảm thiểu ảnh hưởng đến các hệ thống nguồn đang vận hành. Phải cân bằng nhu cầu này đối với các yêu cầu về thời hạn giao hàng và độ trễ đối với dữ liệu đích được hợp nhất.


Kết luận

Bài này đã trình bày mẫu hợp nhất dữ liệu như là một cách tiếp cận để thu gom dữ liệu từ nhiều nguồn, để xử lý và chuyển đổi dữ liệu này rồi áp dụng nó cho một đích duy nhất. Những người dùng dịch vụ trong một SOA thường cần truy cập tới thông tin không đồng nhất và đôi khi là thông tin có xung đột. Hợp nhất dữ liệu có thể tích hợp dữ liệu và giải quyết các xung đột và do đó có thể tạo ra phiên bản sự thật duy nhất cần phải có. Sau đó có thể trưng ra thông tin hợp nhất này thông qua một dịch vụ.

Các vùng trọng tâm để áp dụng mẫu hợp nhất dữ liệu

  • Tích hợp dữ liệu từ nhiều nguồn có mức không đồng nhất cao: Cách tiếp cận này có khả năng mạnh mẽ để giải quyết những xung đột và hòa nhập dữ liệu với nhau. Người ta thường kết hợp mẫu hợp nhất dữ liệu với mẫu làm sạch dữ liệu sao cho có thể giải quyết các vấn đề về chất lượng dữ liệu trong khi hợp nhất.
  • Cung cấp thông tin tích hợp cho những người dùng có yêu cầu cao về tính sẵn dùng của dữ liệu, truy cập đồng thời ở mức cao, khả năng mở rộng quy mô và hiệu năng ở mức cao: Mẫu hợp nhất dữ liệu cụ thể hóa thông tin tích hợp trong một bản sao đích để những người dùng có thể truy cập độc lập với quá trình chuyển đổi và tích hợp.

Vùng nhiều rủi ro khi áp dụng mẫu hợp nhất dữ liệu

Truy cập thời gian thực vào dữ liệu phân tán đang thay đổi thường xuyên: Giải quyết kịch bản này với hợp nhất dữ liệu đòi hỏi phải di chuyển và hợp nhất thường xuyên dữ liệu nguồn. Nếu người dùng hiếm khi cần truy cập thông tin tích hợp này, thì cách tiếp cận này có thể không có hiệu quả kinh tế như các cách tiếp cận khác và có thể không phân phối dữ liệu cập nhật như một ứng dụng được trông đợi.


Bản đồ sản phẩm

Các sản phẩm sau đây của IBM thực hiện mẫu này:

  • Ấn bản doanh nghiệp IBM® WebSphere® DataStage (cũng là một phần của sản phẩm trong danh mục WebSphere Data Integration Suite - Bộ tích hợp WebSphere và cũng là một phần của sản phẩm trong danh mục IBM Information Server - Máy chủ thông tin của IBM) là một nền tảng tích hợp dữ liệu khối lượng lớn dùng để làm sạch, chuyển đổi và bố trí lại dữ liệu. Luồng dữ liệu phức tạp trong WebSphere DataStage được phát triển bằng cách sử dụng một mẫu hình đồ họa hướng-"luồng dữ liệu" để thúc đẩy việc tái sử dụng và nâng cao năng suất của nhà phát triển. Các khả năng xử lý song song, chẳng hạn như hỗ trợ cho phân vùng lại động, các cơ sở dữ liệu song song và các cấu hình lưới, cho phép WebSphere DataStage thao tác số lượng lớn dữ liệu trong các khung thời gian ngắn. Các nguồn và các đích gồm có các hệ thống quản lý cơ sở dữ liệu quan hệ, các hệ thống ERP, hệ thống máy tính lớn kế thừa, XML và các định dạng dữ liệu độc quyền. Nền tảng mở rộng dựa vào websphere DataStage chạy trên các môi trường UNIX, Windows, Linux và zSeries và nó bao gồm một tầng siêu dữ liệu toàn diện để quản lý và kiểm soát các quy tắc nghiệp vụ dùng cho việc quản trị dữ liệu nâng cao và theo dõi thực thể.
  • WebSphere Information Services Director - Giám đốc Các dịch vụ thông tin WebSphere (cũng là một phần của sản phẩm trong danh mục IBM Information Server ) trưng ra các khả năng quản lý thông tin như là các dịch vụ. Nó đóng gói thông tin logic tích hợp, các quy tắc làm sạch, truy cập thông tin v.v như là các dịch vụ. Điều này cách ly nhà phát triển ra khỏi nhà cung cấp bên dưới của chức năng này. Liên quan nhiều nhất với bài viết này là sản phẩm này có khả năng trưng ra các tác vụ của WebSphere DataStage thông qua một giao diện hướng dịch vụ như EJB, JMS hoặc các dịch vụ Web. Sản phẩm này cung cấp cơ sở hạ tầng nền tảng (gồm cân bằng tải và khả năng chịu lỗi) cho các dịch vụ thông tin. Nó thực hiện thành phần hỗ trợ dịch vụ thông tin như minh họa trong Hình 2, Hình 3Hình 4. WebSphere Information Services Director được xây dựng trên cơ sở hạ tầng siêu dữ liệu mạnh mẽ như WebSphere QualityStage.

Lời cảm ơn

Chúng tôi xin cảm ơn Jonathan Adams, Lou Thomason và Fan Lu về sự hỗ trợ của họ trong lúc viết bài này và trong việc phát triển mẫu (mô hình) này.

Tài nguyên

Học tập

Lấy sản phẩm và công nghệ

Thảo luận

Bình luận

developerWorks: Đăng nhập

Các trường được đánh dấu hoa thị là bắt buộc (*).


Bạn cần một ID của IBM?
Bạn quên định danh?


Bạn quên mật khẩu?
Đổi mật khẩu

Bằng việc nhấn Gửi, bạn đã đồng ý với các điều khoản sử dụng developerWorks Điều khoản sử dụng.

 


Ở lần bạn đăng nhập đầu tiên vào trang developerWorks, một hồ sơ cá nhân của bạn được tạo ra. Thông tin trong bản hồ sơ này (tên bạn, nước/vùng lãnh thổ, và tên cơ quan) sẽ được trưng ra cho mọi người và sẽ đi cùng các nội dung mà bạn đăng, trừ khi bạn chọn việc ẩn tên cơ quan của bạn. Bạn có thể cập nhật tài khoản trên trang IBM bất cứ khi nào.

Thông tin gửi đi được đảm bảo an toàn.

Chọn tên hiển thị của bạn



Lần đầu tiên bạn đăng nhập vào trang developerWorks, một bản trích ngang được tạo ra cho bạn, bạn cần phải chọn một tên để hiển thị. Tên hiển thị của bạn sẽ đi kèm theo các nội dung mà bạn đăng tải trên developerWorks.

Tên hiển thị cần có từ 3 đến 30 ký tự. Tên xuất hiện của bạn phải là duy nhất trên trang Cộng đồng developerWorks và vì lí do an ninh nó không phải là địa chỉ email của bạn.

Các trường được đánh dấu hoa thị là bắt buộc (*).

(Tên hiển thị cần có từ 3 đến 30 ký tự)

Bằng việc nhấn Gửi, bạn đã đồng ý với các điều khoản sử dụng developerWorks Điều khoản sử dụng.

 


Thông tin gửi đi được đảm bảo an toàn.


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=70
Zone=SOA và dịch vụ Web, Information Management
ArticleID=928789
ArticleTitle=Các mẫu dịch vụ thông tin, Phần 2: Mẫu hợp nhất dữ liệu
publish-date=05062013