Giới thiệu công cụ Oracle Warehouse Builder

Một phần của tài liệu Xây dựng và khai thác kho dữ liệu cước khách hàng tại Công ty Thông tin Viễn thông Điện lực (Trang 34)

Oracle Warehouse Builder (OWB) còn được gọi là Warehouse Builder (WB) là một framework có khả năng mở rộng, một phần không thể thiếu của Oracle Database. Nó cung cấp các giải pháp thiết kế, triển khai và quản lý KDL cho doanh nghiệp, các KDL cục bộ và các ứng dụng quản trị doanh nghiệp thông minh (e-business intelligence).

OWB còn là một công cụ thực hiện quá trình trích chiết, chuyển đổi và nạp (ETL) dữ liệu vào trong KDL.

CSDL khách hàng

MB

CSDL Cước CSDL Đối soát CSDL Công nợ

CSDL Khách hàng Miền Nam Tr ich c họ n Là m s ạc h Ch uy ển đ ổi Nạ p dữ liệ u Kho dữ liệu Đầ u ra 10 0 90 80 70 60 50 40 30 40 50 Biểu đồ phân tích Báo cáo/truy vấn

3.2.1.1 Các thành phần của OWB

OWB gồm hai thành phần như hình 13: thành phần thiết kế (design environment) và thành phần thực thi (runtime environment). Mỗi thành phần xử lý các khía cạnh khác nhau của hệ thống. Thành phần thiết kế xử lý dữ liệu metadata, thành phần thực thi xử lý dữ liệu vật lý.

Hình 13. Các thành phần của OWB

Thành phần thiết kế bao gồm kho dữ liệu metadata ( metadata repository) được

chứa trong cơ sở dữ liệu oracle và một tập các công cụ thiết kế và báo cáo phía client, công cụ này được viết bằng Java hoặc HTML

Tạo ra metadata là một hoạt động thiết kế cho phép sử dụng các công cụ phía client để thiết kế các đối tượng, các quy trình và luồng công việc. Warehouse Builder hỗ trợ thiết kế lược đồ cơ sở dữ liệu quan hệ, lược đồ đa chiều, quá trình xử lý ETL và các công cụ hỗ trợ người dùng cuối thông qua client.

Các hệ thống nguồn (source system) đóng một vai trò quan trọng trong bất kỳ giải pháp ETL nào và thay vì việc thực hiện ETL một cách thủ công thì Warehouse Builder cung cấp các thành phần tích hợp các thông tin liên quan vào trong kho của nó.

Một thế mạnh của kiến trúc OWB là quy trình quản lý vòng đời, nó cho phép metadata được cập nhật dựa trên thay đổi của các dữ liệu nguồn. Sau đó OWB dễ dàng cập nhật những thay đổi và tiến trình ETL và đến hệ thống đích.

Thành phần thực thi:

Khi người dùng đã thiết kế hệ thống ETL dựa trên một mức logic, họ cần chuyển nó vào môi trường cơ sở dữ liệu vật lý. Trước khi điều này được thực hiện thì thông tin về cơ sở dữ liệu được bổ sung vào thiết kế logic. Sau khi quá trình cấu hình được hoàn thành thì mã code được sinh ra.

OWB tạo ra một ngôn ngữ chuyên biệt cho tiến trình ETL và các câu lệnh SQL DDL cho các đối tượng cơ sở dữ liệu. Mã code sinh ra được triển khai hoặc tới hệ thống hoặc tới cơ sở dữ liệu.

Thực hiện các chức năng ETL có nghĩa là chạy các mã code đã được triển khai vào trong cơ sở dữ liệu. Quá trình ETL chuyển dữ liệu từ nguồn và cơ sở dữ liệu đích.

3.2.1.2 Vấn đề đảm bảo chất lượng dữ liệu trong OWB

Như đã thảo luận ở phần trên, quá trình làm sạch dữ liệu trong KDL chính là bài toán của đảm bảo chất lượng dữ liệu (Data Quality). Thực tế cho thấy, có rất nhiều thách thức đặt ra trong việc xây dựng một KDL. Và chính do tầm quan trọng của KDL cho nên đã có rất nhiều công cụ hỗ trợ việc xây dựng KDL. Tuy nhiên, xây dựng và duy trì một KDL hiệu quả không phải là điều đơn giản. Một trong những vấn đề hàng đầu mà người sử dụng cuối băn khoăn, đó chính là chất lượng nguồn dữ liệu nạp vào trong kho. Nếu chất lượng dữ liệu không đủ độ tin cậy sẽ gây nguy hại nghiêm trọng cho các quá trình khai thác, phát hiện tri thức và ra quyết định đối với các nhà quản lý doanh nghiệp.

So với một số giải pháp thì sự khác nhau căn bản giữa chúng với WB về vấn đề chất lượng dữ liệu chính là mức độ tích hợp vào trong quá trình ETL. Trong WB, công việc thiết kế và quản lý quá trình đảm bảo chất lượng dữ liệu sử dụng cùng một giao diện với các quá trình ETL. Hơn nữa, cũng giống như bất kỳ sự chuyển đổi nào trong WB, sự chuyển đổi chất lượng dữ liệu sử dụng ngôn ngữ kịch bản và thông qua các giao diện lập trình ứng dụng (APIs). Mặt khác,việc kiểm định dữ liệu trong quá trình đảm bảo chất lượng dữ liệu cùng định dạng và vị trí với các quá trình ETL khác.

Vậy, chính xác thì WB cung cấp những tác vụ gì trong quá trình đảm bảo chất lượng dữ liệu? Có thể tóm lược hoá chúng như sau :

 Đưa ra được các luật dữ liệu từ pha hồ sơ hoá , hoặc tạo ra các luật dữ liệu thủ công (Data rules).

 Kiểm định dữ liệu dựa trên các luật dữ liệu (Data auditors)

 Làm sạch tên (Name) và địa chỉ (Address).

 Đối sánh (matching) và hợp nhất (merging) dữ liệu.

Hình 14. Chu kỳ xử lý đảm bảo chất lượng dữ liệu

Theo chu kỳ trên thì các bước đảm bảo chất lượng dữ liệu trong WB bao gồm:

 Sao chép lại toàn bộ siêu dữ liệu cho dữ liệu nguồn.

 Tiến hành hồ sơ hoá các nguồn dữ liệu

 Đưa ra các luật dữ liệu từ kết quả hồ sơ hoá. Hoặc tiến hành đưa vào những luật dữ liệu đã tồn tại .

 Thiết kế các luồng ánh xạ dữ liệu (hay các mappings) sử dụng các toán tử làm sạch tên và địa chỉ (name and address) và toán tử đối sánh-hợp nhất (match - merge)

 Kết hợp các luồng dữ liệu với các luồng tiến trình , bổ sung bộ kiểm định dữ liệu để đo chất lượng dữ liệu tại bất cứ điểm ra nào của tiến trình.

 Triển khai và thực thi các tiến trình để chuyển đổi dữ liệu thô thành thông tin đảm bảo chất lượng Giám sát Sao chép dữ liệu nguồn Hồ sơ hoá dữ liệu Tạo luật dữ liệu Thực hiện Tạo luồng tiến trình Thiết kế luồng ánh xạ dữ liệu

 Bước cuối cùng, chất lượng nguồn thông tin thu được sẽ tiếp tục được giám sát trong môi trường tác nghiệp của các chương trình kiểm định dữ liệu của WB. Data profiling, Data rules và Data auditors là những tính năng mới trong OWB 10g Release2. Tuy nhiên các toán tử làm sạch : name and address, match-merge thì đã có từ các phiên bản trước và được nâng cấp hơn trong phiên bản này.

Trong phạm vi nội dung luận văn, em xin được đi sâu vào tìm hiểu những tính năng mới của OWB.

3.2.1.3 Hồ sơ hoá dữ liệu

Data Profiling - hồ sơ hoá dữ liệu trong OWB là phương thức phân tích dữ liệu trên các nguồn dữ liệu một cách có hệ thống. Nó là bước đầu tiên trong quá trình tích hợp dữ liệu. DP giúp xác thực các giả định về dữ liệu, phát hiện các đặc tính mới có thể có trong dữ liệu.

Sử dụng DP, ta có thể :

 Tiến hành hố sơ hoá dữ liệu từ bất kỳ nguồn dữ liệu nào mà WB có thể truy cập được.

 Thăm dò và quan sát các kết quả thu được ở dạng bảng biểu hoặc đồ họa

 Khoan sâu xuống (Drill down) nguồn dữ liệu dựa trên kết quả hồ sơ hoá.

 Đưa ra các luật dữ liệu.

 Sử dụng các luật dữ liệu để tạo ra những sửa đổi trong dữ liệu nguồn, tiến hành làm sạch dữ liệu.

Sự tương tác giữa người dùng với WB trong quá trình hồ sơ hoá dữ liệu thông qua Wizard. Nó cho phép người dùng chọn các đối tượng tuỳ theo bài toán để xử lý hồ sơ hoá như : các bảng (tables), các khung nhìn (views), các đồi tượng chiều (dimensions) và các đối tượng khối (cubes). Sau khi tiến hành các quá trình phân tích và thống kê cần thiết, WB sẽ trả về kết quả hồ sơ dữ liệu trong một giao diện trình quản lý.

Trong DP có 3 hình thức phân tích dữ liệu chính, đó là : Phân tích thuộc tính (Attribute analysis), Phân tích sự phụ thuộc hàm (Functional dependency analysis) và phân tích tham chiếu (Referential analysis).

Hình 15. Phân loại quá trình hồ sơ dữ liệu trong Warehouse Builder

 Phân tích thuộc tính (Attribute analysis) : là một hình thức hồ sơ hoá theo kiểu phân tích cấu trúc và nội dung dữ liệu đối với mỗi thuộc tính của dữ liệu. Theo kiểu này, ta có thể xác định được các số liệu thống kê chung : giá trị lớn nhất (maximum), giá trị nhỏ nhất (minimum), giá trị trung bình (average of values); số lượng giá trị nulls (count of nulls); số lượng giá trị trùng lặp (distinct count). Ngoài ra, còn có thể phát hiện ra các mẫu (patterns), phân tích các kiểu dữ liệu (data type), thao tác trên các lĩnh vực đã được phân tích (domain), thao tác đối với các khoá duy nhất (unique key).

 Phân tích phụ thuộc hàm (Functional dependency) : Sử dụng kiểu phân tích này sẽ cho thấy được mối liên quan giữa các cột hay giữa các thuộc tính theo kiểu phụ thuộc hàm.

 Phân tích tham chiếu (Referential analysis) : Xác định mối quan hệ giữa các thuộc tính, thấy được sự tồn tại của khoá ngoài (foreign key). Đối với mỗi mối quan hệ, xác định được các độ đo thoả mãn, phát hiện ra các bản ghi không thoả mãn như loại bản ghi đứng đơn lẻ (orphans) hay không có con (childless), phát hiện trường hợp dư thừa cột (redundant columns)- có nghĩa là một cột dữ liệu có mặt trong các bảng chính và bảng con của nó.

Hồ sơ hóa dữ liệu

(Data profiling)

Phân tích thuộc tính (Attribute analysis)

Phân tích phụ thuộc hàm (Functional dependency)

Phân tích tham chiếu (Referential analysis)

Data type

General Unique Orphans Childless

Redundant columns

Domain Joins

Phân tích thuộc tính Phân tích phụ thuộc hàm Phân tích tham chiếu Hình 16. Các loại hồ sơ dữ liệu

3.2.1.4 Luật dữ liệu và các ánh xạ sửa lỗi

Thực tế, công cụ Oracle Data Profiling trong WB không chỉ dừng lại ở pha hồ sơ hoá , có nghĩa là phân tích và thống kê nguồn dữ liệu mà còn đưa ra các luật dữ liệu từ kết quả hồ sơ hoá.. Các luật này có thể được đưa ra một cách tự động hoặc do ngừơi dùng nghiệp vụ tạo nên dựa trên kết quả có được trong giai đoạn trước.

WB sử dụng các luật dữ liệu để tiến hành quá trình làm sạch dữ liệu tự động. Công việc này được thực hiện thông qua việc tạo các ánh xạ (mappings) hiệu chỉnh. Các ánh xạ này có nhiệm vụ thực thi các luật dữ liệu , nhờ đó mà sửa đổi các bản ghi không tuân theo các luật dữ liệu đã đưa ra. Trong quá trình tạo các ánh xạ hiệu chỉnh, WB cung cấp cho người dùng các tuỳ chọn về hình thức làm sạch dữ liệu đối với mỗi luật được sử dụng. Mỗi phương thức làm sạch phụ thuộc vào từng loại luật và cấu hình của mỗi luật. Các tuỳ chọn bao gồm :

 Remove : loại bỏ các bản ghi lỗi so với luật dữ liệu. Tuỳ chọn này có thể áp dụng cho tất cả các loại luật.

 Custom : thường dùng để làm sạch dữ liệu trên các cột có độ phức tạp hơn, liên quan đến việc sử dụng các hàm PL/SQL, các biểu thức logic có điều kiện, hoặc là tạo ra các hàm PL/SQL tuỳ chỉnh. Tuỳ chọn này áp dụng với hầu hết các loại luật dữ liệu. Ngoại trừ các luật liên quan đền Unique key, Referential, và Functional dependency.

 Similarity Match : sử dụng thuật toán đối sánh tương tự . Tuỳ chọn này áp dụng với các luật loại Domain List và chỉ áp dụng với các kiểu dữ liệu kí tự. Với tuỳ chọn này, WB sử dụng các hàm Match-Merge để xử lý.

 Soundex Match : sử dụng các hàm Soundex trong WB dựa trên các thuật toán về Soundex. Tương tự như “Similarity Match”, tuỳ chọn này cũng chỉ áp dụng với các loại luật Domain List và các kiểu dữ liệu kí tự.

Kết thúc giai đoạn tuỳ chọn, WB sẽ tự động tạo ra các ánh xạ để thực thi quá trình sửa đổi, làm sạch.

3.2.1.5 Kiểm định dữ liệu

Sau khi dữ liệu nguồn đã được xử lý, chuyển đổi thành nguồn thông tin chất lượng, chúng sẽ được WB nạp vào khu vực lưu trữ trong KDL – còn được gọi là module đích (target module). Để đảm bảo dữ liệu này vấn được kiểm soát trong khi thực hiện các quá trình xử lý ETL, WB sử dụng công cụ kiểm định dữ liệu (Data Auditor).

Data Auditor là các hoạt động luồng tiến trình (process flow) có nhiệm vụ đánh giá các luật dữ liệu dựa trên các đối tượng đích được đưa ra. Data auditor không chỉ đơn giản thực hiện việc kiểm tra lỗi, nó còn thiết lập giá trị ngưỡng chấp nhận được. Ngưỡng này chỉ ra phần trăm lỗi được phát hiện hay chính là giá trị six-sigma.

Nếu số hàng có lỗi trong đối tượng đích vượt quá giá trị ngưỡng, Data Auditor sẽ thực thi các hành động mô hình hoá theo luồng tiến trình con.

Các quá trình xử lý của Data Auditor được thực thi như một phần của ETL. Do đó, chất lượng dữ liệu tiếp tục được giám sát thông qua các luật dữ liệu, đảm bảo chu kỳ chất lượng dữ liệu được hoàn thành.

Trong phần tiếp theo, luận văn sẽ trình bày các bước xây dựng kho dữ liệu cước khách hàng sử dụng công cụ WB.

Một phần của tài liệu Xây dựng và khai thác kho dữ liệu cước khách hàng tại Công ty Thông tin Viễn thông Điện lực (Trang 34)

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

(65 trang)