
Sử dụng các định nghĩa quy tắc dựng sẵn với IBM
InfoSphere Information Analyzer
Tìm hiểu cách sử dụng các gói dựng sẵn của các quy tắc phân tích chất lượng dữ liệu IBM®
InfoSphere® Information Analyzer (Trình phân tích thông tin InfoSphere của IBM). Chúng tôi
sẽ cho bạn thấy cách hiểu nội dung có sẵn, cách sử dụng thông tin đó để giải quyết các điều kiện
chất lượng dữ liệu chung và sau đó là cách nhập khẩu nó vào môi trường Information Analyzer
của bạn để đẩy nhanh việc phát triển và đánh giá quy tắc.
Tổng quan
Với InfoSphere Information Analyzer của IBM, bạn có thể tạo ra các quy tắc chất lượng dữ liệu
để giám sát tự động các vấn đề chất lượng dữ liệu tiềm năng dựa vào các yêu cầu kinh doanh đã
định hoặc dựa trên các vấn đề đã xác định trong việc phân tích hiệu năng dữ liệu. Các quy tắc
này có thể mất thời gian để phát triển và thử nghiệm để tìm ra hàng loạt dữ liệu trong một bảng,
hệ thống hoặc môi trường cụ thể.
Mục tiêu của bài này là cho bạn thấy các cách để đẩy nhanh sự phát triển này thông qua việc
nhập khẩu và sử dụng các định nghĩa quy tắc dựng sẵn của Information Analyzer, có kèm theo
bài này. Bằng cách sử dụng các định nghĩa quy tắc chất lượng dữ liệu dựng sẵn, bạn sẽ có thể
đẩy nhanh việc phát triển xác nhận hợp lệ chất lượng dữ liệu trong doanh nghiệp của bạn.
Bài này tập trung vào các nhiệm vụ sau:
Hiểu biết về các định nghĩa quy tắc có sẵn trong các gói dựng sẵn.
Sử dụng các định nghĩa quy tắc dựng sẵn để giải quyết các điều kiện chất lượng dữ liệu
chung.
Rà soát lại cấu trúc và nội dung của tệp XML định nghĩa quy tắc của Information
Analyzer.
Nhập khẩu các định nghĩa quy tắc dữ liệu dựng sẵn bằng cách sử dụng API HTTP/CLI —
một tính năng được giới thiệu trong phiên bản V8.5 và phiên bản nâng cao V8.7 của
InfoSphere Information Analyzer.
Các quy tắc chất lượng dữ liệu dựng sẵn kèm theo bài này nhằm mục đích:
Giảm nỗ lực xác định các vấn đề chất lượng dữ liệu trong nhiều miền thông tin phổ biến
(các khóa, các mã định danh quốc gia, các ngày tháng, các mã quốc gia, các địa chỉ
email, v.v..) và các điều kiện (các kiểm tra tính toàn vẹn, các giá trị hợp lệ, các kiểm tra
phạm vi, tổng số gộp chung, các phương trình, v.v..).
Dùng làm các mô hình, các khuôn mẫu và các ví dụ dùng cho việc thiết kế quy tắc bổ
sung riêng của bạn.
Được sử dụng trong các công việc của Information Analyzer (hoặc V8.5 hoặc V8.7) hoặc
thông qua Rule Stage (Giai đoạn quy tắc) có sẵn trong Phiên bản V8.7 của Information
Server (Máy chủ thông tin).

Về đầu trang
Giải quyết các miền dữ liệu và các điều kiện chất lượng chung
Hầu như bất kỳ mảnh dữ liệu nào được lưu trong một cơ sở dữ liệu hay tệp hay đang được xử lý
thông qua một công việc hay dịch vụ web có một số điều kiện liên quan cho biết liệu dữ liệu có
đáp ứng được các quy tắc xác nhận hợp lệ đã thiết lập không. Những điều kiện này có thể đơn
giản khi cho biết rằng phải có dữ liệu trong trường (tức là, nó có đầy đủ không) hoặc khi có dữ
liệu thì nó cần tuân theo một số định dạng hoặc bộ các giá trị đã quy định (tức là, các giá trị hợp
lệ). Hoặc các điều kiện có thể chỉ ra rằng dữ liệu phải khớp với các bản ghi trong một nguồn
tham khảo đã quy định, ví dụ như các mã bưu điện hoặc cho biết rằng một phương trình cụ thể
được tính toán đúng.
Phạm vi tiềm năng của dữ liệu có thể được đánh giá và số lượng tiềm năng của các điều kiện
chất lượng có thể được xác định là rất phong phú và bài này (và các định nghĩa quy tắc dựng sẵn
kèm theo) không thể giải quyết mọi tình huống có thể. Thay vào đó, bài này tập trung vào việc
cung cấp tài nguyên cho một tập các miền và các điều kiện dữ liệu được tìm thấy phổ biến trong
nhiều nguồn dữ liệu.
Information Analyzer cung cấp một khả năng để xác định logic quy tắc cho các miền dữ liệu và
các điều kiện như vậy tách rời khỏi bất kỳ nguồn dữ liệu vật lý nào, do đó cùng một logic luôn
được áp dụng nhất quán từ nguồn dữ liệu này sang nguồn dữ liệu khác (tức là, một định nghĩa
quy tắc dữ liệu có thể được áp dụng và được sử dụng với nhiều nguồn dữ liệu). Được kết hợp với
một khả năng nhập khẩu một bộ các định nghĩa quy tắc theo một định dạng XML đã định nghĩa,
bạn có thể lấy các định nghĩa quy tắc dựng sẵn này và nạp chúng vào Information Analyzer và
bắt đầu áp dụng chúng cho các nguồn dữ liệu riêng của bạn.
Các định nghĩa quy tắc
Các định nghĩa quy tắc tiếp theo một cú pháp cơ bản mà ở đó một biến, có thể chỉ đơn giản là
một từ hoặc thuật ngữ, được đánh giá dựa trên một điều kiện hoặc kiểu kiểm tra đã quy định. Các
điều kiện hoặc kiểm tra đã quy định có thể hoặc không thể yêu cầu một số giá trị tham khảo bổ
sung, ví dụ như biến khác, một danh sách các giá trị, một định dạng cụ thể, v.v.. Hơn nữa, một số
điều kiện có thể được kết nối cùng với các mệnh đề IF, THEN, AND hoặc OR. Ví dụ, một định
nghĩa quy tắc rất đơn giản có thể như sau: DateOfBirth IS_DATE.
Điều kiện này chỉ ra rằng một biến gọi là DateOfBirth phải có một định dạng ngày được công
nhận.
Trong một trường hợp phức tạp hơn một chút, bạn có thể có một định nghĩa quy tắc như Liệt kê
1.
Liệt kê 1. Định nghĩa quy tắc mẫu
IF DateOfBirth EXISTS
AND DateOfBirth > datevalue('1900
-01-01')

AND DateOfBirth < date()
THEN CustomerType = 'P'
Ở đây, có một câu lệnh có điều kiện để kiểm tra xem biến DateOfBirth có tồn tại và nằm trong
một phạm vi đã thiết lập không và chỉ khi các điều kiện đó được đáp ứng, một biến khác được
gọi là CustomerType mới được kiểm tra để xem liệu nó có bằng với một giá trị đã quy định
không.
Thông tin thêm về việc tạo và sử dụng các định nghĩa quy tắc có sẵn trong tài liệu hướng dẫn
người dùng Information Analyzer (xem Các định nghĩa Quy tắc dữ liệu).
Các ví dụ về miền dữ liệu cơ bản
Các định nghĩa quy tắc cơ bản nhất kiểm tra để tìm sự đầy đủ của một trường hoặc một định
dạng chữ hoặc số tiêu chuẩn. Các quy tắc dựng sẵn gồm các ví dụ về những điều kiện này.
Hình 1. Các quy tắc kiểu dữ liệu và tính đầy đủ phổ biến
Ví dụ, định nghĩa quy tắc AlphanumFieldExists đánh giá điều kiện sau: Field1 EXISTS AND
len(trim(Field1)) <> 0.
Ví dụ này bao gồm một số khả năng cơ bản của Information Analyzer:
Việc sử dụng một tên biến chung — trong trường hợp này, chỉ cần gọi là Field1
o LƯU Ý: Biến có thể được kết nối để (kết buộc) tới bất kỳ cột hoặc trường dữ liệu
nào. Đây là tính linh hoạt cho phép một định nghĩa quy tắc cung cấp cơ sở cho
nhiều quy tắc dữ liệu có thể thực hiện được thực tế.
Kiểm tra để tìm nhiều điều kiện — Sự tồn tại của dữ liệu và một điều kiện không bằng
(<>)
o LƯU Ý: Không có giới hạn cụ thể nào về số lượng các điều kiện có thể được đưa
vào trong một định nghĩa quy tắc, mặc dù trên thực tế để giữ cho các định nghĩa
quy tắc dễ hiểu là rất có ích. Trong việc tạo ra các định nghĩa quy tắc, hãy tìm
kiếm các khối xây dựng cơ bản và lợi dụng khả năng của bộ quy tắc của

Information Analyzer để kết hợp các điều kiện thay vì xây dựng tất cả chúng
thành một quy tắc (xem Các kỹ thuật phân tích quy tắc dữ liệu trong Trung tâm
Thông tin của IBM].
Việc đưa vào các chức năng — Trong trường hợp này là len và trim
o LƯU Ý: Hãy tham khảo Hướng dẫn người dùng Information Analyzer để biết
Các loại chức năng có sẵn. Thường có thể sử dụng các chức năng để tạo các điều
kiện dễ giải quyết hơn. Trong trường hợp này, các chức năng được sử dụng để
kiểm tra các khoảng trống trong một trường. Trước tiên chức năng trim (cắt tỉa)
loại bỏ bất kỳ số lượng các giá trị để trống (khoảng trống) từ bên trái hoặc bên
phải của bất kỳ văn bản thực tế nào. Chức năng len xác định độ dài của tất cả các
ký tự chữ và số còn lại với một hy vọng rằng trường này sẽ có ít nhất một giá trị
ký tự (có nghĩa là, chiều dài khác 0).
Các miền dữ liệu theo phân loại dữ liệu
Ở mức cơ bản, ngoài các ví dụ chung chung ở trên, bạn hầu như có thể phân loại dữ liệu vào một
tập các miền dữ liệu chung như đã thấy trong các thông tin chi tiết về Column Analysis (Phân
tích Cột) của Information Analyzer:
Mã định danh — Một trường phổ biến duy nhất và có thể nhận biết dữ liệu liên quan (ví
dụ, Customer ID - mã định danh khách hàng, National identifier - mã định danh quốc
gia).
Bộ chỉ thị — Một trường, thường được gọi là một Cờ, có một điều kiện nhị phân (ví dụ,
True - Đúng hay False - Sai, Yes - Có hoặc No - Không, Female - Nữ hay Male - Nam).
Mã (Code) — Một trường, có một bộ các giá trị riêng biệt và đã xác định, thường được
viết tắt (ví dụ, Mã trạng thái, Trạng thái khách hàng).
Ngày — Một trường có chứa một số giá trị ngày.
Số lượng — Một trường có chứa một giá trị số và không được phân loại như một Mã
định danh hoặc Mã (ví dụ như, Price - Giá, Amount - Số tiền, Asset Value - Giá trị tài
sản).
Văn bản — Một trường có chứa các giá trị chữ và số, văn bản có thể dài và không được
phân loại như một Mã định danh hoặc Mã (ví dụ, Name - Tên, Address - Địa chỉ,
Description - Mô tả).
Ngoài ra, có một phân loại quy tắc cơ bản: Valid Value Combination (Kết hợp giá trị hợp lệ),
trong đó một trường thường là một giá trị nhất định, một trường thứ hai phải có một số giá trị cụ
thể.
Một tập con các định nghĩa quy tắc dựng sẵn tiếp sau các việc phân nhóm chung và các yêu cầu
xác nhận hợp lệ điển hình này. Ví dụ, Hình 2 nêu bật các định nghĩa quy tắc dựng sẵn cho các
trường Code.

Hình 2. Các định nghĩa quy tắc dựa trên phân loại phổ biến cho các mã số
Các định nghĩa quy tắc này dựa trên các phân loại dữ liệu phổ biến thường đánh giá các định
dạng cấu trúc hay các yêu cầu xác nhận hợp lệ cơ bản (ví dụ, một Mã định danh phải nằm trong
một phạm vi được giới hạn giữa một giá trị thấp và một giá trị cao, nhưng nó không quy định bất
kỳ giá trị chính xác nào).
Ví dụ, nếu bạn có một trường Code cho phép các giá trị chữ số 0-9, bạn có lẽ cần áp dụng định
nghĩa quy tắc Code1DigitNumeric (xem trong Hình 2) để kiểm tra xem trường này có chứa một
giá trị số một chữ số không. Định nghĩa quy tắc này như sau: Code MATCHES_FORMAT '9'.
Ví dụ này cho thấy một điều kiện đơn giản:
Sử dụng một biến chung được gọi là Code
Một việc kiểm tra để tìm một điều kiện định dạng duy nhất: MATCHES_FORMAT
o LƯU Ý: Information Analyzer có hai bước kiểm tra riêng biệt về định dạng dữ
liệu: MATCHES_FORMAT, được hiển thị ở đây và MATCHES_REGEX, đánh giá dựa vào
một loạt các điều kiện của biểu thức chính quy (có thể tìm thấy nhiều ví dụ thông
qua một tìm kiếm Google đơn giản theo thuật ngữ "regular expression" - biểu
thức chính quy).
Điều kiện MATCHES_FORMAT đòi hỏi một giá trị tham khảo; trong trường hợp này, nó dự
kiến một và chỉ một giá trị số (tất cả các chữ số bằng số được biểu diễn bằng một số 9).
Các miền dữ liệu phổ biến
Như đã lưu ý, có nhiều miền dữ liệu tiềm năng có thể được kết hợp vào một gói các định nghĩa
quy tắc dữ liệu dựng sẵn. Các ví dụ về các miền phổ biến cho các gói có sẵn gồm có:
Thông tin nhân khẩu học
o Tuổi
o Ngày sinh
o Ngày mất
o Mã định danh quốc gia (ví dụ, Số an sinh xã hội của Hoa Kỳ, số SIN của Canada,
số hộ chiếu, Mã tài chính của Ý, v.v..)
Thông tin địa chỉ Internet
o Địa chỉ email

