Quá trình xử lý của ETL

Một phần của tài liệu (LUẬN VĂN THẠC SĨ) Nghiên cứu giải pháp xây dựng cơ sở dữ liệu tích hợp về thủ tục hành chính (Trang 39 - 45)

Chu kỳ sống điển hình của ELT bao gồm các bƣớc thực hiện sau đây: - Khởi tạo chu kỳ

- Thiết lập dữ liệu liên quan - Trích xuất từ các nguồn - Chuẩn hóa

- Chuyển đổi: Làm sạch, áp dụng các luật kinh doanh, kiểm tra tính toàn vẹn dữ liệu, tạo các khối kết hợp hoặc bộ phận

- Giai đoạn trung gian: Nạp vào các bảng tạm nếu sử dụng.

- Kiểm tra các báo cáo: Tuân theo các luật kinh doanh, sửa chữa nếu có sai sót.

- Xuất bản đến các bảng mục tiêu -Lƣu trữ

2.3.2. Công nghệ EII (Enterprise Information Integration)

Tích hợp thông tin doanh nghiệp (Enterprise Information Integration) là một loại phần mềm middleware cho phép kết hợp dữ liệu từ các nguồn rời rạc vào trong một ứng dụng, làm cho nhiều nguồn dữ liệu giống nhƣ một CSDL đơn. Ngƣời quản lý, điều hành có thể sử dụng thông tin kết hợp thông qua một ứng dụng EII để điều hành quá trình hoạt động của tổ chức, ra quyết định dựa trên thông tin hiện tại.

EII giải quyết đƣợc vấn đề đó là làm thể nào để kết hợp và sử dụng có hiệu quả các tài sản là thông tin của một tổ chức. Khái niệm đƣợc quan tâm phía sau của EII là thông tin hơn là các ứng dụng có thể tích hợp, vì vậy cần phải đảm bảo hạ tầng cho thông tin để các ứng dụng có thể sử dụng rộng rải.

Việc sử dụng kiến trúc hƣớng dịch vụ SOA là cần thiết đối với EII. Các ứng dụng trong kiến trúc SOA yêu cầu truy cập đến dữ liệu từ sự đa dạng của nguồn thông tin. Thay vì phải tạo ra các kết nối điểm-điểm mà vi phạm các nguyên tắc của SOA. EII có thể cung cấp một tầng dịch vụ dữ liệu linh hoạt và dễ sử dụng mà đơn giản hóa việc truy cập dữ liệu cho tất cả các ứng dụng trong SOA.

Kiến trúc hƣớng dịch vụ SOA (Service Oriented Architecture) là “Khái niệm về hệ thống trong đó mỗi ứng dụng đƣợc xem nhƣ một nguồn cung cấp dịch vụ”.

Dịch vụ là yếu tố then chốt của SOA. Có thể hiểu dịch vụ nhƣ là hàm chức năng (module phần mềm) thực hiện quy trình nghiệp vụ nào đó, một cách cơ bản, SOA là tập hợp các dịch vụ kết nối mềm dẻo với nhau (nghĩa là một ứng dụng có thể nói chuyện với một ứng dụng khác mà không cần biết các chi tiết kĩ thuật bên trong), có giao tiếp (dùng để gọi hàm dịch vụ) đƣợc định nghĩa rõ ràng và độc lập với nền tảng hệ thống, và có thể tái sử dụng. SOA là cấp độ cao hơn của phát triển ứng dụng, chú trọng đến quy trình nghiệp vụ và dùng giao tiếp chuẩn để giúp che đi sự phức tạp của kĩ thuật ở phía dƣới.

Ƣu điểm quan trọng nhất của kiến trúc SOA là khả năng kết nối mềm dẻo (nhờ sự chuẩn hoá giao tiếp) và tái sử dụng. Các dịch vụ có thể đƣợc sử dụng với trình Client chạy trên nền tảng bất kì và đƣợc viết bởi ngôn ngữ bất kì.

EII cung cấp một khung nhìn ảo về dữ liệu phân tán, khung nhìn này cũng có thể đƣợc sử dụng cho truy vấn theo yêu cầu truy cập đến dữ liệu giao địch, tác nghiệp, hay data warehouse, và/hoặc thông tin không có cấu trúc. EII hỗ trợ cách tiếp cận liên hiệp dữ liệu cho tích hợp dữ liệu.

Mục đích của EII là cho phép các ứng dụng hiểu đƣợc dữ liệu phân tán, mặc dù nó hoạt động trong một CSDL độc lập. EII hỗ trợ cho các ứng dụng xử lý các vƣớng mắc trong việc lấy các dữ liệu từ nhiều vị trí khác nhau, mà ở đó dữ liệu có thể khác

Trong mô hình chuẩn, EII truy cập đến dữ liệu phân tán bao gồm chia nhỏ một truy vấn để dựa vào một khung nhìn ảo bên trong các thành phần con, và gửi mỗi thành phần con đó để xử lý tại vị trí mà ở đó dữ liệu đƣợc yêu cầu đang tồn tại. Sản phẩm EII sau đó kết hợp các dữ liệu lấy đƣợc và gửi kết quả cuối cùng tới ứng dụng để thực hiện truy vấn. Nhiều giải pháp EII tiên tiến có khả năng tinh chỉnh quá trình này để đạt đƣợc hiệu suất tối ƣu.

Các sản phẩm EII đƣợc tạo ra từ hai nền công nghệ khác nhau - hệ quản trị CSDL quan hệ và XML. Tuy nhiên khuynh hƣớng công nghiệp là theo hƣớng các sản phẩm hỗ trợ cả SQL (ODBC và JDBC) và giao diện dữ liệu XML (XQuery và XPath). Hầu hết các sản phẩm EII là dựa trên ngôn ngữ lập trình JAVA.

Các sản phẩm thay đổi nhiều theo các đặc điểm của chúng, tối ƣu hóa truy vấn và hiệu suất là những vấn đề quan trọng đối với các sản phẩm khác nhau. Các sản phẩm EII mà tạo ra từ nền tảng hệ quản trị CSDL quan hệ thƣờng vận dụng việc tìm kiếm đƣợc thực hiện trong việc phát triển các hệ thống quản lý CSDL phân tán (Developing distributed database management systems - DDBMS). Mục tiêu của DDBMS là cung cấp sự trong suốt, truy cập một cách đầy đủ để đọc và ghi tới dữ liệu phân tán. Một trong những kết quả trong lĩnh vực DDBMS liên quan đến hiệu suất tác động đến xử lý phân tán trên các ứng dụng thiết yếu. Đây là trƣờng hợp đặc biệt khi sự hỗ trợ truy cập ghi đầy đủ tới dữ liệu phân tán. Một vấn đề khác là sự phức tạp về giải quyết nhiều hệ thống dữ liệu không đồng nhất. Vì vậy để khắc phục những vấn đề của DDBMS, hầu hết các sản phẩm EII cung cấp truy cập read-only tới dữ liệu không đồng nhất. Tuy nhiên, một số sản phẩm cung cấp giới hạn các khả năng cập nhật. Lựa chọn hiệu suất quan trọng khác là khả năng của sản phẩm EII để cache các kết quả và cho phép các nhà quản trị định nghĩa quy luật đƣợc xác định khi dữ liệu trong cache là có hiệu lực hoặc cần đƣợc làm tƣơi. Các đặc điểm, đặc trƣng, để đánh giá các sản phẩm EII kể cả các dữ liệu nguồn và đích đƣợc hỗ trợ bao gồm web service và dữ liệu không có cấu trúc là các khả năng biến đổi, quản lý metadata, các khả năng cập nhật dữ liệu nguồn, các tùy chọn xác thực và bảo mật, hiệu suất và caching.

EII thƣờng bổ sung cho các công nghệ tích hợp nhƣ là ETL và EAI, các công ty vẫn khám phá trên các đặc điểm của công nghệ này và đánh giá và phân tích đối với những cái đã đƣợc xây dựng. Một số câu hỏi đƣợc đặt ra là công nghệ EII đƣợc thiết kế để làm gì? Sự cần thiết của công nghệ khác là gì khi chúng ta đã sẵn sàng có các công nghệ? Trong trƣờng hợp nào thì nên để sử dụng EII.

Thế nào là EII?

Trong hầu hết các tổ chức, các thông tin đƣợc lƣu trữ trong các CSDL riêng biệt, data warehouse và các ứng dụng. Các sản phẩm tích hợp làm cho nó có khả năng kết hợp thông tin từ các nguồn dữ liệu khác nhau theo yêu cầu. Thực hiện việc này bằng cách thiết lập một tầng dịch vụ dữ liệu trung gian và làm cho có khả năng để truy cập đến dữ liệu trong một cách thức chuẩn hóa, thay vì phải tƣơng tác trực tiếp với từng nguồn dữ liệu riêng biệt.

EII đã giải quyết một tập các vấn đề đƣợc đặt ra. Các kiến trúc tích hợp sẽ quan tâm đến EII nếu cần thực hiện các tác vụ nhƣ dƣới đây:

- Sinh ra các báo cáo với thông tin đƣợc lƣu trữ trong một số định dạng khác nhau trong các data warehouse phân tán.

- Truy cập dữ liệu phân tán qua nhiều nguồn (CSDL quan hệ, các ứng dụng doanh nghiệp, data warehouse, documents, XML)

- Kết hợp dữ liệu trong các định dạng khác nhau (CSDL quan hệ, các file phẳng, word hoặc excel, documents, XML)

- Hợp nhất dữ liệu tĩnh với các thông điệp, web service, hoặc các dòng dữ liệu khác. - Thực hiện truy vấn bao gồm dữ liệu đã lƣu trữ với các thông tin đang hoạt động.

EII làm việc nhƣ thế nào?

Các ứng dụng xử lý các truy vấn tới tầng EII. EII hoạt động nhƣ một động cơ kéo (Pull), nó phân tách các truy vấn ngang qua các hệ thống nguồn dữ liệu không đồng nhất, tập hợp các tập dữ liệu giao dịch, kết hợp chúng lại với nhau và sau đó đẩy chúng tới các ứng dụng theo yêu cầu. Các ứng dụng yêu cầu đó có thể là web servive, excel hoặc một số ứng dụng khác.

EII làm việc bằng việc cung cấp các ứng dụng độc lập, khung nhìn ảo thông qua nhiều nguồn dữ liệu khác nhau. Các ứng dụng sẽ truy cập một view nếu dữ liệu của nó đƣợc định vị tồn tại trong một CSDL đơn, cho dù là dữ liệu đơn lẻ có thể tồn tại trên các hệ thống nguồn khác nhau. Khi một ứng dụng truy cập một view với sự trong suốt về nền tảng, EII xử lý khả năng kết nối với các CSDL back-end và các ứng dụng, cùng với các chức năng liên quan, nhƣ là bảo mật, toàn vẹn dữ liệu và tối ứu hóa truy vấn.

Các ứng dụng xử lý các truy vấn với tầng EII, sau đó giao tiếp với các nguồn dữ liệu phía dƣới để tập hợp và trả về kết quả. Xem hình vẽ sau:

Hình 10. EII cho phép các ứng dụng sử dụng thông tin từ các nguồn khác nhau. EII server đánh giá các yêu cầu thông tin, các truy vấn các nguồn dữ liệu độc lập và

cung cấp đầu ra theo yêu cầu của các ứng dụng

Các giao thức và ngôn ngữ truy vấn hỗ trợ bởi các nguồn thông tin và các giao diện lập trình hỗ trợ bởi các database server. Nó cũng cho phép các ứng dụng xử lý độc lập dữ liệu với hạ tầng quản lý dữ liệu bên dƣới.

EII có thể làm việc cùng với các công nghệ tích hợp đang tồn tại nhƣ ETL (extract, transform, load) và EAI (Enterprise Application Integration). Không giống nhƣ ETL xử lý dữ liệu nguồn tại chỗ để bóc tách và lấy những dữ liệu cần thiết theo yêu cầu. So sánh với EAI, EII là khả thi trong việc tích hợp các hệ thống thông tin, mà không lập lịch các luồng dữ liệu giữa các ứng dụng.

Một số lợi ích của EII

- EII cung cấp một điểm truy cập đơn đến các nguồn thông tin rời rạc, điều này làm giảm sự phức tạp tồn tại trong các ứng dụng client khi cố thâm nhập vào các nguồn dữ liệu khác nhau. Một số lợi ích chính của việc sử dụng công nghệ này là:

- EII bảo vệ cho các ứng dụng từ khía cạnh nhỏ nhất nhƣ vị trí và định dạng của thông tin, các giao thức và ngôn ngữ truy vấn đƣợc hỗ trợ bởi các nguồn thông tin và giao diện lập trình ứng dụng đƣợc hỗ trợ bởi các database server.

- Nó cho phép các ứng dụng xử lý dữ liệu độc lập với thay đổi của hạ tầng quản lý dữ liệu bên dƣới.

- EII có thể hoạt động nhƣ CSDL ảo, cách ly với data warehouse từ ảnh hƣởng của các truy vấn mà không đƣợc quản lý.

- Tự động hóa các hoạt động và trích xuất dữ liệu từ một số loại hệ thống dữ liệu nhƣ: web sources, CSDL quan hệ, XML, web service, các file: flat, pdf, word, excel, logs…, data warehouse, các ứng dụng…

- Hỗ trợ kiến trúc SOA, khi dữ liệu có thể truy cập qua web service và các định dạng trao đổi đã định trƣớc có thể đƣợc sinh ra nhƣ XML.

Hạn chế của EII

EII có xu hƣớng ảnh hƣởng tới các vấn đề về chất lƣợng dữ liệu, thậm chí tới một mức độ lớn hơn nhƣ mô hình data warehouse. Không giống nhƣ dữ liệu đƣợc thu thập và duy trì trong data warehouse, dữ liệu đó đƣợc trích xuất từ các nguồn dữ liệu khác nhau và sau đó chuẩn hóa và làm sạch, trong khi các công cụ EII sinh ra một view ảo về dữ liệu, chúng thu thập từ các nguồn dữ liệu khác nhau, nhƣng thƣờng chứa đựng sự không tƣơng thích về dữ liệu.

2.3.3. Công nghệ EAI (Enterprise Application Integration)

Tích hợp ứng dụng doanh nghiệp - EAI (Enterprise Application Integration) đƣợc định nghĩa nhƣ sử dụng phần mềm và các nguyên lý kiến trúc hệ thống máy tính để kết hợp một tập các ứng dụng máy tính.

Trong môi trƣờng kinh doanh cạnh tranh và năng động nhƣ ngày nay, các ứng dụng nhƣ là quản lý chuỗi các nguồn cung cấp, quản lý quan hệ khách hàng, thông minh kinh doanh, và các môi trƣờng cộng tác tích hợp đã trở nên cần thiết cho các tổ chức để duy trì lợi thế cạnh tranh của họ. EAI là quá trình liên kết các ứng dụng này và các ứng dụng khác nhằm để có đƣợc lợi thế về tài chính và hoạt động. Khi các hệ thống khác nhau không thể chia sẻ dữ liệu của chúng một cách thực sự, chúng tạo ra ngẽn cổ chai mà bắt buộc con ngƣời can thiệp vào dƣới hình thức ra quyết định. Với một kiến trúc EAI đƣợc triển khai một cách hợp lý, các tổ chức có khả năng tập trung phần lớn nổ lực của họ vào việc tạo ra giá trị thay vì phải tập trung vào quản lý workflow.

Tuy nhiên EAI không chỉ là việc chia sẻ dữ liệu giữa các ứng dụng, trọng tâm của EAI là tập trung vào việc chia sẻ dữ liệu kinh doanh và tiến trình kinh doanh. Tham dự vào EAI bao gồm việc xem xét hệ thống của các hệ thống, nó bao gồm một phạm vi lớn các vấn đề liên quan với nhiều hệ thống hỗn tạp, phân tán trên mạng tại nhiều mức khác nhau.

EAI và Công nghệ web service giải quyết bài toán tích hợp dữ liệu trong nhiều cách khác nhau. Công nghệ tiêu biểu nhất cho kiến trúc hƣớng dịch vụ là công nghệ Web Service. Web Service diễn tả một cách thức tích hợp các ứng dụng trên nền web lại với nhau bằng cách sử dụng các công nghệ XML, SOAP, WSDL, và UDDI trên nền tảng các giao thức Internet với mục tiêu tích hợp ứng dụng và truyền thông điệp. XML đƣợc sử dụng để đánh dấu dữ liệu, SOAP đƣợc dùng để truyền dữ liệu, WSDL

dịch vụ nào hiện tại đang có sẵn để có thể sử dụng. Web Service cho phép các tổ chức có thể trao đổi dữ liệu với nhau mà không cần phải có kiến thức hiểu biết về hệ thống thông tin đứng sau Firewall.

Với công nghệ Web Service, mỗi Service ở đây là một module có thể thực hiện các công việc khác nhau, ta có thể tổng hợp các Service thành phần lại để cùng thực hiện một công việc lớn, đó đƣợc gọi là công nghệ tích hợp Web Service, khi đó mỗi Service thành phần đƣợc gọi là một Service Composition. Công nghệ Web Service đã đem lại rất nhiều lợi thế cho việc chia sẻ tài nguyên qua mạng, trợ giúp xây dựng các hệ thống phân tán đồng thời đáp ứng đƣợc tính mềm dẻo cần thiết, hệ thống có thể dễ dàng chấp nhận những thay đổi lớn so với thiết kế ban đầu mà vẫn đảm bảo cho vấn đề nâng cấp và bảo trì sau này.

Cơ chế hoạt động của Web Service yêu cầu phải có 3 thao tác đó là : Find, Public, Bind.

Trong kiến trúc Web Service, Service Provider công bố các mô tả về các service thông qua Service Registry. Service Consumer tìm kiếm trong các Service Registry để tìm ra các service mà cần sử dụng. Service Consumer có thể là một ngƣời hoặc cũng có thể là một chƣơng trình. Hình vẽ.

Một phần của tài liệu (LUẬN VĂN THẠC SĨ) Nghiên cứu giải pháp xây dựng cơ sở dữ liệu tích hợp về thủ tục hành chính (Trang 39 - 45)

Tải bản đầy đủ (PDF)

(77 trang)