Thiết kế, xây dựng gói trích lọc dữ liệu theo mô hình [E][T][L]

Một phần của tài liệu Tìm hiểu và cải tiến hệ thống kho dữ liệu trong ngân hàng (Trang 39)

a. Các tiêu chuẩn/hỗ trợ giữa 2 công cụ DTS và Datastage

Bảng 2.5.2.1. Tiêu chuẩn kỹ thuật giữa DTS và Datastage [6, 8]

Tiêu chuẩn/Hỗ trợ DTS DataStage

Các định dạng dữ liệu (OLE DB, ASCII, ODBC, các file truy cập nhị phân và tuần tự...)

Có Có

Xây dựng biểu thức Không Có

Scripting ActiveX Script Extended dialect of

BASIC

Hỗ trợ XML Có Có

Đặt lịch Có Có

Thông báo (error logs, alerts…) Có Có (Cửa sổ giám sát

realtime)

Data partitioning Không Có

Transaction Rollback Không Có

Debug (gỡ lỗi) Không Có (Phiên bản 8.7)

Dễ sử dụng Đơn giản Bình thường

Nền tảng hỗ trợ (Win NT/98,

Unix...) Windows Windows/Unix

Công cụ thiết kế Data Transformantion Services IBM InfoSphere DataStage Designer

b. Chuyển đổi từ DTS sang Datastage

Ví dụ một gói ETL cơ bản trong hệ thống kho dữ liệu hiện tại sử dụng DTS trong hình 2.5.2.1 dưới đây:

Hình 2.5.2.1. Một gói xử lý ETL trong DTS Về cơ bản, một gói DTS gồm có 2 thành phần chính:

 Transform Data Task: Chuyển đổi dữ liệu từ cơ sở dữ liệu nguồn sang cơ sở dữ liệu đích. Dữ liệu chuyển đổi có thể từ một bảng hoặc nhiều bảng liên kết với nhau thông qua một câu lệnh lấy dữ liệu hay còn gọi là câu lệnh truy vấn (select).

 Execute SQL Task: Thực hiện một đoạn SQL, các câu lệnh xử lý dữ liệu được chỉ định trên một cơ sở dữ liệu nhất định.

Cơ chế xử lý, trích lọc dữ liệu của DTS và Datastage khác nhau cơ bản ở phần transform.

DTS sử dụng công cụ Data Transformation Services trên máy trạm (client) để thiết kế, còn Datastage sử dụng công cụ IBM InfoSphere DataStage and QualityStage Designer. Cả hai công cụ trên đều có khả năng thiết kế và lưu lại gói trích lọc, chuyển đổi trên máy chủ ETL. Gói trích lọc, chuyển đổi ETL trên DTS gọi là “package”, trên Datastage gọi là “job”.

Sau đây, luận văn sẽ trình bày việc chuyển đổi các thành phần trong gói (packgage) của DTS dạng [ET][L] sang “job” của Datastage dạng [E][L][T] trên các công cụ thiết kế tương ứng.

Dữ liệu nguồn, đích (Data Connection): là một đối tượng để tạo kết nối đến CSDL nguồn hoặc đích.

DTS DataStage

Đối tượng trên DTS:

Connection (Source/Destination) Cấu hình :

Đối tượng trên Datastage:

Connector Cấu hình:

Trích xuất dữ liệu một bảng đơn:

Ví dụ: Trích xuất một bảng dữ liệu KHACHHANG từ CSDL nguồn đẩy sang bảng tương ứng trên CSDL đích từ câu lệnh truy vấn:

DTS DataStage

Package:

Cấu hình:

Câu lệnh truy vấn lấy dữ liệu được cấu hình trên dây chuyển đổi “transform”.

Job:

Cấu hình:

Về cơ bản, việc trích xuất dữ liệu từ một bảng ở Datastage thiết kế tương tự như DTS, tuy nhiên câu lệnh truy vấn lấy dữ liệu được ghi ở đối tượng kết nối dữ liệu nguồn.

Trích xuất dữ liệu từ nhiều bảng với câu lệnh truy vấn liên kết:

Ví dụ: Trích xuất bảng dữ liệu với thông tin bao gồm MaGD, TenKH, SoTien từ liên kết hai bảng KHACHHANG và GIAODICH:

SELECT MAGD, TENKH, SOTIEN

FROM KHACHHANG INNERJOIN GIAODICH ON KHACHHANG.MAKH=GIAODICH.MAKH

DTS DataStage

Package:

Cấu hình:

Việc trích xuất đơn giản chỉ là một câu lệnh truy vấn liên kết, được thực thi trên CSDL nguồn.

Kết quả được chuyển tải qua máy DTS tới CSDL đích.

Job:

Cấu hình:

Bảng KHACHHANG và GIAODICH được liên kết qua đối tượng liên kết “Join” trong Infosphere Datastage Designer.

Liên kết “Join” 2 bảng KHACHHANG và GIAODICH được thực hiện trên máy chủ Datastage, đẩy vào bảng tạm, cuối cùng kết quả được chuyển tải về CSDL đích.

Câu lệnh truy vấn liên kết được thể hiện dưới dạng đồ họa kéo thả trong thiết kế job Datastage.

Có đầy đủ các đối tượng để xử lý câu lệnh truy vấn trong Datastage, ví dụ đối tượng “Funnel” để dùng kết hợp

“union”…

Trích xuất dữ liệu từ nhiều bảng, trong đó có tính toán dữ liệu với câu lệnh truy vấn liên kết:

Ví dụ: Trích xuất bảng dữ liệu với thông tin bao gồm MaKH, TenKH, tổng số tiền giao dịch của từng khách hàng, từ liên kết hai bảng KHACHHANG và GIAODICH:

SELECT A.MAKH, A.TENKH, SUM(B.SOTIEN) SOTIEN FROM KHACHHANG A INNERJOIN GIAODICH B

ON A.MAKH=B.MAKH GROUPBY A.MAKH, A.TENKH

DTS DataStage Package: Cấu hình: Job: Cấu hình: Bảng KHACHHANG và GIAODICH được liên kết qua đối tượng liên kết “Join” trong Infosphere Datastage Designer, sau đó thông qua đối tượng Aggregator sẽ được tính toán để tính tổng số tiền giao dịch

“SUM(SOTIEN)”.

Câu lệnh truy vấn liên kết và tính tổng được thể hiện dưới dạng đồ họa trong thiết kế job Datastage.

Thực thi một chuỗi SQL trên một CSDL:

Ví dụ: Thực thi một chuỗi SQL để cập nhật và xóa bảng kết quả TTGIAODICH trên CSDL đích, nếu 0 < SoTien < 1 thì SoTien = 1, xóa dữ liệu có SoTien < 0.

UPDATE TTGIAODICH SET SOTIEN=1

WHERE SOTIEN>0 AND SOTIEN<1; DELETE TTGIAODICH

DTS DataStage

Package:

Cấu hình:

Thực thi một chuỗi câu lệnh SQL xử lý dữ liệu được tách ra riêng trên DTS. Việc thực thi này sẽ được thực hiện sau khi việc chuyển đổi kết thúc thành công hay thất bại, tùy theo người sử dụng thiết kế.

Job:

Cấu hình:

Trên mỗi đối tượng kết nối CSDL nguồn hoặc đích, Datastage đều có thể cho phép thực thi một chuỗi các câu lệnh SQL xử lý dữ liệu, trước hoặc sau khi chuyển đổi tùy theo người thiết kế.

 Việc chuyển đổi từ một gói trên DTS dạng [ET][L] sang “job” trên Datastage dạng [E][T][L] là hoàn toàn có thể, không ảnh hưởng tới luồng xử lý dữ liệu trên kho dữ liệu.

Một phần của tài liệu Tìm hiểu và cải tiến hệ thống kho dữ liệu trong ngân hàng (Trang 39)

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

(75 trang)