Tải bản đầy đủ (.pdf) (17 trang)

Các mẫu dịch vụ thông tin, Phần 3: Mẫu làm sạch dữ liệu pot

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (455.21 KB, 17 trang )

Các mẫu dịch vụ thông tin, Phần 3: Mẫu làm sạch dữ liệu
Giới thiệu
Thông tin là một trong những tài sản chiến lược nhất của bất kỳ tổ chức nào. Chất
lượng dữ liệu là một điều kiện tiên quyết quan trọng về sử dụng thông tin để đạt
được những lợi thế thấy rõ trên thị trường. Dữ liệu tồi chỉ biến thơng tin có giá trị
tiềm năng cao thành các luồng byte vơ dụng. Ví dụ, thơng tin địa chỉ khơng chính
xác về một "bên tham gia" (chẳng hạn như một người dùng dịch vụ, bệnh nhân
hoặc khách hàng) sẽ hạn chế tầm hiểu biết chiến lược để có thể hiểu rõ về thơng
tin. Loại dữ liệu này có thể bao gồm thông tin để cho biết rằng liệu hai bên tham
gia có giống nhau hay khơng, con số tổng của những người dùng dịch vụ và có cái
nhìn đầy đủ về khách hàng. Dữ liệu tùy tiện có thể làm giảm sự hài lòng của khách
hàng, làm cho việc trao đổi thơng tin khó khăn và làm tăng các chi phí khi cố tìm
cách né tránh vấn đề, cũng như tạo ra những thách thức khác.
Các tầng trong một kiến trúc phần mềm
Một kiến trúc phần mềm có bốn tầng:
Tầng Cơ sở dữ liệu -- Nằm ở "dưới cùng", nó chịu trách nhiệm duy trì dữ liệu và
cung cấp các hoạt động tạo, đọc, cập nhật và xóa dữ liệu.
Tầng Ứng dụng -- Nằm trên tầng cơ sở dữ liệu, nó cung cấp logic nghiệp vụ.
Tầng Tiến trình -- Nó sắp xếp thứ tự logic nghiệp vụ thơng qua việc quản lý luồng
cơng việc.
Tầng Trình bày -- Nằm trên cùng, nó đưa ra hiển thị trực quan của tất cả các tầng
bên dưới cho người dùng cuối.
Các vấn đề về chất lượng dữ liệu là nghiêm trọng nhất khi thông tin nằm rải rác
trên các kho lưu trữ dữ liệu bị cô lập và không đồng nhất. Bản chất không đồng
nhất và cô lập của môi trường như vậy thường đi cùng với một kiến trúc có các
định dạng khác nhau và các giá trị không nhất quán. Ngay cả trong một cơ sở dữ
liệu đơn lẻ, chất lượng dữ liệu đã lưu giữ lâu dài không nhất thiết là tốt hơn nếu
khơng thực thi các quy tắc thích hợp. Cho dù thơng tin vẫn cịn trong một kho lưu
trữ dữ liệu hoặc được một ứng dụng đang hoạt động xử lý, chất lượng dữ liệu



thường hoặc không được thực thi chút nào hoặc bị kiểm soát bởi các thành phần
khác nhau, sử dụng những quy tắc không nhất quán, nhúng trong một mã ứng dụng
nào đó.
Để chuyển thơng tin thành sự hiểu biết và sử dụng được giá trị quan trọng của nó,
chất lượng dữ liệu cần được giải quyết bằng cách áp dụng phương pháp làm sạch
dữ liệu theo cách nhất quán; có nghĩa là, sử dụng các quy tắc làm sạch nhất qn
trong tồn doanh nghiệp, khơng chỉ trong tầng cơ sở dữ liệu mà còn trong các tầng
ứng dụng và tiến trình.
Sau khi mơ tả tóm tắt giá trị của cách tiếp cận này, bạn sẽ tìm hiểu bối cảnh trong
đó nên áp dụng mẫu làm sạch dữ liệu nào. Tiếp theo, bạn tìm hiểu về cách tiếp cận
theo vấn đề và giải pháp cho mẫu này. Cuối cùng, bạn sẽ có cái nhìn sơ tổng quan
về các vùng trọng tâm và các vùng nhiều rủi ro, cũng như những hạn chế của mẫu
này.
Về đầu trang
Đề xuất giá trị của mẫu làm sạch dữ liệu
Mẫu này có thể cung cấp ba giá trị chính là:
Ưu điểm của tính nhất quán và chất lượng.
Giảm chi phí phát triển và bảo trì.
Ưu điểm về khả năng tái sử dụng.
Chúng ta hãy xem xét kỹ hơn từng giá trị một.
Ưu điểm của tính nhất quán và chất lượng
Lợi ích quan trọng nhất khi áp dụng mẫu làm sạch dữ liệu là nó có thể cải thiện
tính nhất qn và chất lượng thơng tin, cho dù mẫu đó được duy trì trong cơ sở dữ
liệu hay được một ứng dụng xử lý. Mẫu này cải thiện chất lượng của dữ liệu và bảo
đảm rằng nó có chất lượng cao.
Việc áp dụng mẫu làm sạch dữ liệu trong một bối cảnh SOA cung cấp các quy
trình nghiệp vụ có khả năng quản lý và bảo đảm chất lượng dữ liệu "ngay tại thời
điểm thu thập ban đầu của nó". Việc áp dụng làm sạch dữ liệu trước khi thông tin



được lưu giữ lâu dài cho phép đưa vào các cơ chế xác nhận hợp lệ đã quy định về
nghiệp vụ tại điểm nhập dữ liệu, chẳng hạn như trong các cổng thơng tin nhập dữ
liệu.
Giảm chi phí phát triển và bảo trì
Mẫu này cung cấp các hướng dẫn thực hành được gợi ý về cách định rõ các quy tắc
làm sạch và cách áp dụng có hiệu quả nhất các hướng dẫn đó cho dữ liệu lưu giữ
lâu dài và dữ liệu tạm thời. Nhiều bản thực hiện mẫu làm sạch dữ liệu cung cấp các
công cụ tinh vi để phát triển, thử nghiệm và triển khai các quy tắc làm sạch. Các
cơng cụ này có thể giúp làm giảm chi phí hoạt động trong nhiều dự án trong đó các
quy tắc làm sạch được xác định bằng thủ cơng và phải duy trì một cách rất vất vả.
Ưu điểm về khả năng tái sử dụng
Một khía cạnh quan trọng của mẫu làm sạch dữ liệu là nó tập trung vào khả năng
tái sử dụng ở mức doanh nghiệp. Nếu mỗi cơ sở dữ liệu và ứng dụng thực hiện quy
trình làm sạch riêng của mình, thì điều này có thể dẫn đến các quy tắc làm sạch
khơng nhất quán, trong đó mức chất lượng dữ liệu tăng thêm, nhưng khơng theo
một cách nhất qn và có hiệu quả và chưa đạt đến mức cần thiết. Mẫu này mô tả
làm thế nào có thể áp dụng một cách nhất quán các quy tắc làm sạch như nhau cho
rất nhiều người tiêu dùng.
Về đầu trang
Bối cảnh
Bối cảnh truyền thống của mẫu làm sạch dữ liệu là tầng cơ sở dữ liệu, đó là nơi áp
dụng mẫu này thường xuyên nhất. Dựa trên sự quan tâm ngày càng tăng về SOA,
chúng ta thấy có nhiều cơ hội mới để áp dụng mẫu này trong một bối cảnh SOA.
Bối cảnh truyền thống, không-SOA
Mẫu làm sạch dữ liệu vẫn thường được áp dụng trong việc làm sạch thông tin tên
và địa chỉ, nhưng cũng có thể áp dụng nó cho bất kỳ văn bản dạng tự do nào, chẳng
hạn như các mô tả về sản phẩm trong các hệ thống hàng tồn kho. Văn bản dạng tự
do thường hay nói đến nhất là văn bản nhập dữ liệu thủ công, không chọn dữ liệu
từ một danh sách lựa chọn tiêu chuẩn hoặc nhập dữ liệu không theo bất kỳ định
dạng nào, chẳng hạn như một địa chỉ đầy đủ trong một trường đơn lẻ. Mẫu làm



sạch dữ liệu được định nghĩa như là sự tiêu chuẩn hóa, làm sạch sẽ và cuối cùng,
so khớp (hoặc loại bỏ sự trùng lặp và dư thừa) các bản ghi dựa trên nội dung của
các trường văn bản dạng tự do.
Định nghĩa về Quản lý dữ liệu chủ
Chúng ta gọi dữ liệu chủ là tập hợp dữ liệu cốt lõi, rất quan trọng đối với các mục
tiêu kinh doanh của một tổ chức. Tập hợp này bao gồm các sản phẩm hoặc các bên
tham gia (chẳng hạn như khách hàng, nhà cung cấp, v.v). Vì dữ liệu chủ rất quan
trọng đối với hầu hết tất cả các chức năng nghiệp vụ, nên nó thường phân tán trên
nhiều ứng dụng. Quản lý dữ liệu chủ (MDM) giải quyết việc quản lý, tích hợp và
đồng bộ hóa có hiệu quả dữ liệu chủ trên nhiều ứng dụng.
Trong bối cảnh không-SOA truyền thống, quá trình này thường là một chức năng
xử lý theo gói, được thực hiện định kỳ để đáp ứng các u cầu tồn vẹn thơng tin
về Quản lý dữ liệu chủ (Master Data Management) và để đạt được một khung nhìn
nhất quán duy nhất về các thực thể quan trọng của công ty. Theo truyền thống, việc
làm sạch dữ liệu cũng đã được áp dụng trong nhiều dự án kho dữ liệu. Để hỗ trợ
phân tích, lập báo cáo, cung cấp một tầm nhìn bao quát về các thực thể như khách
hàng chẳng hạn, dữ liệu được thu thập từ nhiều nguồn xung quanh doanh nghiệp.
Những hịn đảo thơng tin đó có thể được tạo ra bởi các đơn vị độc lập, các nhóm
sản phẩm, các cơng ty con hoặc một sự kiện xảy ra một lần sau khi sáp nhập hay
mua lại. Nếu khơng có cơng nghệ nội bộ hoặc muốn làm giàu thêm dữ liệu với các
chi tiết nhân khẩu học hay tiếp thị, dữ liệu đã thu thập được thường được gửi tới
các công ty bên ngồi để làm sạch. Một thời gian sau, có lẽ là vài ngày hoặc thậm
chí lâu hơn, dữ liệu được trả về, được coi là khơng cịn trùng lặp và dư thừa nữa
mà đã được cải thiện. Nếu được xử lý nội bộ, mẫu làm sạch dữ liệu truyền thống
thường là một chức năng "đúng thời điểm", được thực hiện hàng đêm hay hàng
tuần để làm sạch dữ liệu nói chung hoặc nạp dữ liệu vào kho lưu trữ dữ liệu, các hệ
thống tạo báo cáo hoặc các kho dữ liệu đang vận hành.
Ví dụ về sử dụng

Cửa hàng bán lẻ đồ trang sức sử dụng mẫu làm sạch dữ liệu trên cơ sở hàng tuần
để kết nối các tên khách hàng từ một mảng nhiều hệ thống để xử lý tài khoản
khách hàng mới, sự trung thành của khách hàng, tạo hướng dẫn khách hàng và
thanh toán. Mỗi điểm nhập dữ liệu là một nguồn có thể gây ra trùng lặp hay dư


thừa về tên khách hàng hoặc về nhiều khách hàng có thể sống ở cùng một địa
điểm. Cách tiếp cận để loại bỏ trùng lặp hay dư thừa và mang lại ý nghĩa cho
những thông tin như vậy là một ví dụ về việc áp dụng mẫu làm sạch dữ liệu. Ban
đầu được xem là một cách để tiết kiệm những thứ đơn giản như phí bưu chính, bây
giờ các công ty biết lo xa đã tin dùng mẫu làm sạch dữ liệu để đạt sự hiểu biết tốt
hơn về các mẫu chi tiêu của người tiêu dùng, để xác định tốt hơn những người mua
khối lượng lớn và để hợp nhất các yêu cầu bán hàng, hỗ trợ khách hàng và thanh
toán vào một chỗ để cải thiện trải nghiệm của khách hàng.
Hình 1 minh họa kiến trúc mức cao về áp dụng mẫu làm sạch dữ liệu trong bối
cảnh truyền thống.

Hình 1. Bối cảnh truyền thống của mẫu làm sạch dữ liệu

Bối cảnh SOA
Bối cảnh SOA với mẫu làm sạch dữ liệu tận dụng lợi thế của các kỹ thuật tiêu
chuẩn hóa và so khớp tinh vi và mở rộng chúng tới vị trí quan trọng nhất của các
ứng dụng gần thời gian thực. Được xem xét trong bối cảnh này, mẫu làm sạch dữ
liệu cho phép một doanh nghiệp mở rộng các khả năng của mình để xác nhận hợp
lệ và so khớp với điểm tạo. Hơn nữa, có thể tích hợp logic loại bỏ trùng lặp và
logic so khớp giống nhau thường dùng trong các hoạt động xử lý theo gói với các
phương pháp luận tìm kiếm tinh vi hoặc để tăng cường khả năng định vị thông tin
khách hàng khi thông tin hay các mã định danh khách hàng hoặc chưa biết hoặc
chưa đầy đủ.



Bối cảnh SOA để làm sạch dữ liệu cho phép tiêu chuẩn hóa và so khớp các chuỗi
yêu cầu riêng lẻ. Một tên hoặc địa chỉ đơn lẻ tự động được làm sạch, được trả về
theo một định dạng tiêu chuẩn hoặc trong trường hợp phát hiện, được trả về cùng
với một tập hợp các ứng viên tiềm năng được xác định trong quá trình so khớp.
Trong các giải pháp nhập dữ liệu, việc này cải thiện sự biểu diễn dữ liệu (các chữ
viết tắt thống nhất cho các kiểu đường phố và các bang, chẳng hạn) và tăng thêm
lợi thế để tìm kiếm một dữ liệu trùng lặp hay dư thừa trước khi lưu giữ lâu dài nó.
Việc tránh trước các vấn đề do dữ liệu trùng lặp hay dư thừa gây ra sẽ ít tốn kém
hơn nhiều so với việc cố gắng sửa chữa chúng về sau hoặc phải chịu những hậu
quả về tài khoản bị xử lý sai do khơng thể có một quan niệm duy nhất về một
khách hàng.
Ví dụ về sử dụng
Có thể sử dụng một ứng dụng về điểm bán hàng, được biểu hiện bằng cổng thơng
tin ở phía trên bên trái của ví dụ trong Hình 2, làm một mơ đun về sự trung thành
của khách hàng để quản lý các hồ sơ của khách hàng thông thường. Trong trường
hợp của chuỗi bán lẻ đồ trang sức lớn đã nói ở trên, ứng dụng của mẫu làm sạch dữ
liệu trong một bối cảnh SOA sẽ cải tiến một bộ phận con của ứng dụng này. Hãy
tưởng tượng khi một khách truy cập vào cửa hàng đã quên hoặc chưa bao giờ biết
mã khách hàng trung thành của mình. Tên của khách hàng được nhập vào từng chữ
(và dễ có khả năng bị lỗi) được so khớp động với kho lưu trữ dữ liệu chủ trung tâm
theo thời gian thực và một danh sách các tên ứng viên được trả về. Từ các ứng viên
đó, có thể tìm thấy hoặc xác nhận hợp lệ hồ sơ của khách hàng thực tế như là một
khách hàng mới. Bấy giờ nhân viên bán hàng mới có thể cung cấp các dịch vụ mà
một khách hàng trung thành được hưởng, chẳng hạn như các đánh giá miễn phí và
có thể đề nghị mua món q mới dựa trên hồ sơ cá nhân, chẳng hạn như sinh nhật
hoặc những ngày kỷ niệm sắp tới. Khách hàng nhận được sự quan tâm thêm và
cảm thấy mình đang được đối xử như một người đặc biệt. Việc triển khai làm sạch
dữ liệu là một dịch vụ mang lại những lợi nhuận tiềm năng và có lợi cho trải
nghiệm của khách hàng. Các quy tắc so khớp và tiêu chuẩn hóa được sử dụng lại,

nhờ các chức năng tương tự được áp dụng trong lúc chạy chương trình xử lý theo
bó.


Hình 2. Bối cảnh SOA của mẫu làm sạch dữ liệu

Về đầu trang
Đặt vấn đề
Mẫu làm sạch dữ liệu giải quyết thách thức về cải thiện chất lượng dữ liệu và bảo
đảm tính nhất quán của dữ liệu ở mức siêu dữ liệu cũng như ở chính mức dữ liệu.
Các nguyên nhân điển hình về chất lượng dữ liệu thiếu và nghèo nàn là:
Các lỗi nhập dữ liệu (lỗi gõ phím).
Các định nghĩa siêu dữ liệu (các mơ hình dữ liệu) quá lỏng lẻo và không được xác
định nhất quán.
Các ràng buộc về tính tồn vẹn được khơng được xác định hoặc thực thi (thích
hợp).
Ví dụ, định nghĩa hoặc ràng buộc rằng một mã bưu điện phải là một số hợp lệ
chẳng hạn, có thể bị bỏ sót hoặc khơng được thực thi nhất quán. Nhiều bản thực
hiện có thể khơng kiểm tra xem số mã đó có hợp lệ khơng hoặc thậm chí số mã đó
có là một số hay không. Các định dạng để biểu diễn cùng một thực thể thế giới
thực có thể mâu thuẫn nhau (ví dụ: kiểu số so với kiểu chuỗi ký tự để biểu diễn một
mã bưu điện). Đúng như vừa mô tả, sự khơng nhất qn có thể thể hiện ở mức siêu


dữ liệu, cũng như ở chính mức dữ liệu. Thậm chí nếu các mơ hình dữ liệu đã được
định nghĩa một cách thích hợp và nhất quán, việc thiếu các ràng buộc thích hợp về
tính tồn vẹn đối với các giá trị dữ liệu có thể dẫn đến các vấn đề về chất lượng và
tính nhất quán. Cùng một thực thể thế giới thực có thể được biểu diễn bằng các giá
trị dữ liệu khác nhau, chẳng hạn như các số mã bộ phận khác nhau của một sản
phẩm hoặc các số đo trọng lượng khác nhau. Một số vấn đề phổ biến nhất bao

gồm:
Thiếu sự phân tách các giá trị (ví dụ, địa chỉ đầy đủ dưới dạng trường văn bản tự
do mà khơng có bất kỳ dấu hiệu nào cho thấy nơi tên đường phố kết thúc và bắt
đầu tên thành phố)
Thiếu các tiêu chuẩn cho các định dạng và giá trị dữ liệu như:
Các kiểu dữ liệu (ví dụ, số nguyên hoặc varchar).
Định dạng văn bản ("123-45-6789" hoặc "123.456.780" hoặc "123 45 6789").
Các từ viết tắt ("IBM" hoặc "I.B.M" hoặc "Int. Bus. Machines" hoặc "International
Business Machines").
Mức độ trừu tượng hóa và độ chi tiết ("Massachusetts" hay là "Suffolk County").
Các thuộc tính bắt buộc (danh hiệu cho một người) hoặc các phần của các thuộc
tính (kiểu của một tổ chức bên trong tên của nó (ví dụ như "IBM" hoặc "IBM
Corporation").
Thiếu các giá trị nhất quán cho các mã định danh.
Bố trí khơng đúng các giá trị vào các thuộc tính (giá trị của mã bưu điện-ZIP xuất
hiện trong thuộc tính số điện thoại).
Các giá trị khơng đúng do nhập dữ liệu không đúng hoặc thông tin đã lỗi thời
("Somers, CT 10589", ở đây mã bưu điện "10589" không phải ở tiểu bang
Connecticut mà ở New York).
Trùng lặp hay dư thừa các bản ghi do các giá trị khơng nhất qn trong một hay
nhiều thuộc tính.
Về đầu trang


Mô tả giải pháp
Các đặc điểm trong thời gian thiết kế mẫu làm sạch dữ liệu xoay quanh việc thiết
lập các quy tắc tiêu chuẩn để chuyển đổi và làm sạch các nguồn dữ liệu, việc định
nghĩa các tiêu chí so khớp để hỗ trợ loại bỏ trùng lặp hay dư thừa và việc nhận biết
cách xác định dữ liệu phổ biến nhất hoặc chính xác nhất. Như bạn có thể tưởng
tượng, thiết kế là giai đoạn quan trọng và phức tạp nhất trong quá trình làm sạch dữ

liệu. Một khi đã hoàn thành nhiệm vụ này, việc áp dụng các quy tắc làm sạch, so
khớp và tiếp tục tồn tại được sử dụng trong các quá trình thời gian chạy.
Các đặc điểm trong thời gian thiết kế
Các nhà thiết kế áp dụng mẫu này phải quy định các quy tắc làm sạch, có thể được
hỗ trợ bởi các cơng cụ thích hợp. Có thể chia hoạt động này thành bốn bước chính:
Phân tích cú pháp dữ liệu đầu vào và gắn vào các phần tử tiêu chuẩn và đủ chi tiết.
Tiêu chuẩn hóa dữ liệu.
So khớp và loại bỏ trùng lặp hay dư thừa các mục nhập dữ liệu.
Sự tiếp tục tồn tại của thơng tin chính xác
Như đã nêu trong phần đặt vấn đề, có thể biểu diễn các giá trị dữ liệu theo văn bản
tự do hoặc một số trường gộp lại (thuộc tính street có thể nắm giữ số nhà, hướng
phố cũng như tên phố). Dựa trên sự hiểu biết về dữ liệu nào thực sự được bắt giữ
trong một trường, bước đầu tiên là xác định thuật toán để tách các giá trị dữ liệu và
gán chúng tới các thuộc tính cơ bản thích hợp nhất. Điều này địi hỏi phải có kiến
thức đặc trưng về miền ứng dụng (ví dụ, các đường phố có thể có một phần chỉ
hướng ở Mỹ, chẳng hạn như "1007 North Main Street", nhưng không phổ biến ở
Đức).
Sau khi gán chính xác các giá trị dữ liệu cho các thuộc tính, nhà thiết kế cần quy
định cách chuẩn hóa các giá trị này. Điều này có nghĩa là nhà thiết kế cần tìm câu
trả lời cho các câu hỏi như sau:
Văn bản sẽ có dạng chữ hoa hoặc dạng hỗn hợp chữ hoa, chữ thường?
Các con số sẽ được chuyển đổi sang kiểu dữ liệu thích hợp (chẳng hạn như "mười
chín" thành "19") hay khơng?


Các con số trong trường mã bưu điện có biểu diễn một mã bưu điện đúng khơng?
Mã bưu điện có khớp với bang (và thành phố) không)?
Địa chỉ đầy đủ này (số phố, phố, thành phố, bang, mã bưu điện) có tồn tại khơng?
Biểu diễn chuẩn cho một tên (ví dụ như "Bob") sẽ là gì? (Bước này là để nhận biết
các sự trùng lặp, không phải đề xuất một tên chính xác, rất có thể là "Bob" mà

khơng phải là "Robert").
Một số quy tắc tiêu chuẩn hóa rất đơn giản và khơng địi hỏi nỗ lực đáng kể nào,
chẳng hạn như chuyển đổi dữ liệu ký tự hỗn hợp thành dữ liệu chữ hoa. Một số quy
tắc là tương đối nâng cao và yêu cầu truy cập vào một cơ sở dữ liệu lưu trữ các giá
trị chính xác, chẳng hạn như sự kết hợp chính xác giữa mã bưu điện, thành phố và
bang ở Mỹ. Các quy tắc chuẩn hóa cũng có thể phải theo ngữ cảnh: một chuỗi như
"St. Virginia St." được xác định có một tên phố là "St. Virginia" và một kiểu “phố”
viết là "street" (giả sử đây là một địa chỉ của Hoa Kỳ). " St." và " St.", về mặt kỹ
thuật đều giống nhau, nhưng chúng có một ý nghĩa khác khi được diễn giải qua con
mắt của một bộ quy tắc thông minh.
Trong nhiều trường hợp, nhà thiết kế phải nhận biết được các bản ghi trùng lặp
tiềm năng. Thật không may, ngay cả sau khi chuẩn hóa, các giá trị dữ liệu của các
bản ghi thường không giống hệt nhau. Trong một bản ghi, tên của một người có thể
là "J. Smith" và trong bản ghi khác, tên đó có thể là "John Smith". Một trong
những thách thức khi nhận biết một sự trùng khớp là xác định liệu có khả năng tên
"J. Smith" là "John Smith" không. Rõ ràng, điều này tùy thuộc vào những thông tin
khác chứa trong hồ sơ. Nếu địa chỉ hồn tồn giống nhau, rất có thể có khả năng
này. Điều này cũng sẽ tùy thuộc vào có bao nhiêu người có cùng họ và cùng tên:
có ít khả năng là có hai người cùng có tên là "April Back-Cunninghams" trong
cùng một thành phố so với trường hợp hai người cùng có tên "Robert Johnson". Có
thể áp dụng mẫu tương tự đã dùng cho việc phân tích cú pháp và phân tích từ vựng
của các tên và địa chỉ dạng tự do để tiêu chuẩn hóa và loại bỏ trùng lặp các danh
sách sản phẩm hoặc các bộ phận phụ tùng nhằm cải tiến việc kiểm sốt hàng tồn
kho. Cần lưu ý rằng chúng tơi đã sử dụng chủ yếu là các địa chỉ của Hoa kỳ, nhưng
cách tiếp cận này chắc chắn sẽ áp dụng được cho bất kỳ quốc gia nào và không chỉ
là các địa chỉ.


Có hai phương pháp để giải quyết việc so khớp: so khớp tất định và so khớp xác
suất. So khớp tất định dựa trên các quy tắc nghiệp vụ và các thuật toán để định

nghĩa một sự trùng khớp. Ưu điểm của phương pháp này là nó cung cấp kết quả rõ
ràng chẳng hạn như hai bản ghi có trùng khớp nhau hay không. Tuy nhiên, bộ quy
tắc này thường bị hạn chế theo các quy tắc và các thuật tốn được phân loại có
mức độ phức tạp trung bình hay đơn giản. Phương pháp so khớp xác suất sử dụng
các thuật toán thống kê và logic mờ (fuzzy) để chỉ báo một sự trùng khớp. Cách
tiếp cận này sử dụng nhiều cơ chế mạnh mẽ hơn để nhận biết một sự trùng khớp và
đưa ra xác suất để chỉ sự trùng khớp, chẳng hạn như 93%. Mức tin cậy của sự
trùng khớp sẽ được cân đối với giá trị của thơng tin đang được xử lý và chi phí để
xác định sự trùng khớp đó.
Dựa trên các quy tắc so khớp, nhà thiết kế quy định cụ thể các quy tắc tiếp tục tồn
tại để xác định bản ghi và các thuộc tính nào của một bản ghi phản ánh thơng tin
chính xác và cần chọn lấy và loại bỏ bản ghi và thuộc tính nào.
Bây giờ chúng ta đã hoàn thành phần cốt lõi về quy định các quy tắc làm sạch,
bước cuối cùng là xác định cách thu gom dữ liệu đầu vào (bằng cách sử dụng yêu
cầu dịch vu, trích ra/truy vấn cơ sở dữ liệu) và cách đưa ra kết quả của quá trình
làm sạch (áp dụng với một cơ sở dữ liệu hay là cung cấp như một đáp ứng dịch
vụ).
Hình 3 Hình 3 cho thấy một tổng quan về hoạt động này.

Hình 3. Các khía cạnh thời gian thiết kế của Mẫu làm sạch dữ liệu


Định nghĩa về lược tả dữ liệu
Lược tả dữ liệu là phân tích cơ sở dữ liệu để hiểu rõ hơn về siêu dữ liệu của chúng.
Các mục tiêu gồm có:
Phát hiện ra siêu dữ liệu chưa được quy định bao gồm bất kỳ các mối quan hệ bên
trong và giữa các cơ sở dữ liệu.
Kiểm tra độ chính xác của các quy tắc toàn vẹn đã quy định.
Gợi ý về một mơ hình dữ liệu thích hợp hơn.
Mục tiêu cuối cùng đặc biệt quan trọng để định nghĩa một mơ hình dữ liệu tích hợp

trên các nguồn khơng đồng nhất.
Điều quan trọng cần lưu ý là mẫu làm sạch dữ liệu thường được áp dụng cùng với
các mẫu khác, các hộp màu xanh lá cây trong Hình 3 là một ví dụ như vậy. Đối với
các nhà phát triển hoặc nhà thiết kế, để quy định các quy tắc làm sạch, cần thiết
phải có một sự hiểu biết đầy đủ về các nguồn dữ liệu nên áp dụng mẫu làm sạch dữ
liệu cho chúng. Điều này bao gồm việc nhận biết và hiểu ngữ nghĩa của thông tin,
chẳng hạn như ý nghĩa của các phần tử mơ hình dữ liệu cũng như thông tin cấu
trúc. Lược tả dữ liệu sẽ giúp lấy được kiến thức này từ các nguồn dữ liệu bên dưới.
Trong nhiều trường hợp, mẫu làm sạch dữ liệu được áp dụng cùng với mẫu hợp
nhất dữ liệu. Trong một kịch bản như vậy, cần quy định các ánh xạ các phần tử dữ
liệu từ các nguồn tới đích (được gọi là mơ hình hóa tích hợp - integration modeling
trong Hình 3).
Thời gian chạy
Dịch vụ làm sạch dữ liệu nhận dữ liệu có mức chất lượng dữ liệu không xác định
làm đầu vào. Thông thường, hoặc dịch vụ được gọi ra với đầu vào này làm một
tham số của yêu cầu dịch vụ (theo giá trị) hoặc dịch vụ này thu gom dữ liệu từ một
hoặc nhiều nguồn đã định (theo tham chiếu). Sau đó dịch vụ này áp dụng các quy
tắc làm sạch đối với dữ liệu nguồn. Tùy thuộc vào sự phức tạp của các quy tắc làm
sạch dữ liệu, q trình này có thể yêu cầu tra tìm trong một cơ sở dữ liệu hoặc một
từ điển để xác nhận tính chính xác của thông tin (chẳng hạn như một tổ hợp đúng
của mã bưu điện, thành phố, bang). Sau khi xử lý thành công, thông tin đã làm
sạch được trả về như là sự đáp ứng của dịch vụ. Trong một bối cảnh truyền thống,


kết quả đầu ra này thường được áp dụng cho một cơ sở dữ liệu hoặc tiếp tục xử lý
trong một quá trình hợp nhất dữ liệu. (Xem phần Tài nguyên để biết nhiều bài viết
về dữ liệu hợp nhất).
Các dịch vụ làm sạch dữ liệu thường đòi hỏi một mức độ tinh vi cao được thực
hiện bằng máy chủ làm sạch dữ liệu để có thể cung cấp các mức hiệu năng và khả
năng mở rộng quy mô cao thông qua việc khai thác xử lý song song. Sau đó máy

chủ này có thể xử lý và làm sạch những khối lượng dữ liệu vô cùng lớn trong chế
độ gói cũng tốt như với các bản ghi đơn lẻ trong một môi trường chạy thời gian
thực. Một kịch bản liên quan đến việc hợp nhất và làm sạch toàn bộ nội dung của
nhiều hệ thống di sản minh họa yêu cầu xử lý nhiều khối lượng dữ liệu lớn. Ở đầu
kia của kịch bản, có thể gọi máy chủ làm sạch dữ liệu thông qua một dịch vụ Web
của một ứng dụng cổng thông tin để kiểm tra một địa chỉ đã được nhập trên màn
hình. Trong trường hợp này, máy chủ có thể cần đáp ứng với một số lượng lớn các
yêu cầu đồng thời theo thời gian thực.
Về đầu trang
Những việc cần xem xét
Khi áp dụng mẫu làm sạch dữ liệu, điều quan trọng là cần hiểu xem nó ảnh hưởng
như thế nào đến các yêu cầu không chức năng sau đây.
Tần suất thực hiện giao dịch
Khả năng của dịch vụ làm sạch để thực hiện một giao dịch làm sạch dữ liệu ở tốc
độ cao được xác định bằng tốc độ ở đó máy chủ làm sạch dữ liệu có thể truy cập
dữ liệu đầu vào và áp dụng các quy tắc làm sạch. Các quy tắc làm sạch càng phức
tạp và càng yêu cầu tra tìm nhiều hơn, thì việc thực hiện hoạt động làm sạch sẽ
càng kéo dài.
Một máy chủ làm sạch dữ liệu có thể khai thác các khả năng xử lý song song sẽ có
một ưu điểm đáng kể so với các cách tiếp cận khác; IBM® WebSphere®
QualityStage ((xem phần Tài nguyên) là một ví dụ về một máy chủ làm sạch dữ
liệu đã sẵn sàng chạy
Hiệu năng /thời gian đáp ứng giao dịch


Sự phức tạp của các quy tắc làm sạch và khả năng của máy chủ làm sạch để xử lý
dữ liệu có hiệu quả sẽ xác định thời gian đáp ứng giao dịch (áp dụng các quy tắc
làm sạch đối với dữ liệu đầu vào và trả về kết quả). Nhiều bản thực hiện máy chủ
làm sạch có thể phối hợp các quy tắc và khai thác các khả năng xử lý song song sẽ
thực hiện tốt hơn so với những bản khác.

Khối lượng dữ liệu cho mỗi giao dịch
Việc áp dụng mẫu làm sạch dữ liệu đối với các tập hợp dữ liệu lớn cũng như các
bản ghi riêng lẻ là khá phổ biến. Vì vậy, máy chủ làm sạch dữ liệu cần có khả năng
điều chỉnh quy mơ để xử lý nhiều khối lượng dữ liệu lớn.
Các khả năng chuyển đổi
Các hoạt động làm sạch dữ liệu (phân tích cú pháp hay phân tách các giá trị, chuẩn
hóa và so khớp và tiếp tục tồn tại) được quy định dưới dạng các quy tắc làm sạch.
Cuối cùng có thể áp dụng các hoạt động đó cho việc chuyển đổi dữ liệu đầu vào,
có thể có chất lượng thấp, thành một kết quả đầu ra có một mức chất lượng và tính
nhất quán cao hơn. Do các quy tắc chuyển đổi có thể có nhiều và phức tạp, nên
nhiều bản thực hiện mẫu làm sạch dữ liệu triển khai các quy tắc làm sạch dưới
dạng các hoạt động chuyển đổi bằng cách sử dụng một máy chủ làm sạch dữ liệu.
Các khả năng chuyển đổi của mẫu làm sạch dữ liệu được chun mơn hóa và tập
trung vào việc cải thiện chất lượng và tính tồn vẹn dữ liệu bằng cách tiêu chuẩn
hóa và so khớp dữ liệu. Các cách tiếp cận chuyển đổi dữ liệu tổng quát hơn –
chẳng hạn như được mô tả trong Phần 2: Mẫu hợp nhất dữ liệu -- tập trung vào
việc trao đổi và định dạng lại, chia tách và sáp nhập dữ liệu và khơng có hỗ trợ tinh
vi hơn về chất lượng dữ liệu.
Các yêu cầu chuyển đổi thường hay bị ảnh hưởng nhất bởi sự đa dạng của nguồn
dữ liệu và như vậy, khả năng để định nghĩa các đặc điểm của các chuyển đổi phức
tạp là rất quan trọng. Các yêu cầu chuyển đổi càng phức tạp và khác nhau, việc
chuyển đổi thời gian chạy hoặc máy chủ làm sạch dữ liệu phải càng tinh vi hơn.
Kiểu mơ hình nguồn, các giao diện, các giao thức
Các bản triển khai sản phẩm của mẫu làm sạch dữ liệu thay đổi tùy theo phạm vi
các định dạng khác nhau mà chúng có thể hỗ trợ đối với dữ liệu đầu vào. Do được


áp dụng đầy đủ và chính xác, mẫu làm sạch 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 khác nhau 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.

Thời gian phân phối giải pháp
Các bản triển khai sản phẩm của mẫu làm sạch dữ liệu thường cung cấp hỗ trợ
công cụ rất tinh vi để quy định các quy tắc làm sạch và để hiển thị trực quan tính
hiệu quả của các quy tắc ấy đối với dữ liệu đầu vào. Ví dụ, bản ghi nào được nhận
dạng là một bản ghi trùng khớp dựa trên các quy tắc so khớp xác suất?. Nhiều
trong số các bản thực hiện này đã định sẵn các hoạt động (quy tắc làm sạch) để
dùng ngay được với các sản phẩm. Tính năng này cho phép người thực hiện áp
dụng cách tiếp cận này rất hiệu quả trong một khoảng thời gian ngắn.
Người ta thường áp dụng mẫu này đối với dữ liệu có một mức chất lượng và tính
nhất qn rất thấp. Do đó có thể cần phải tinh chỉnh nhiều lần các quy tắc làm
sạch. Nỗ lực trên có liên quan trực tiếp đến các đặc điểm của bài tốn cần giải
quyết chứ khơng phải là cách tiếp cận của mẫu.
Tập hợp kỹ năng và kinh nghiệm
Có hai tập hợp kỹ năng và kinh nghiệm chính cần thiết để làm sạch dữ liệu. Các kỹ
năng phân tích cần thiết để hiểu và định nghĩa nhiều sắc thái gắn với các nguồn dữ
liệu và các đích về định dạng, các giá trị, các phạm vi và các đặc điểm khác là rất
quan trọng. Nếu tiếp cận theo cách sử dụng cơng cụ, nhà phân tích cần có kiến
thức cụ thể về sản phẩm để định nghĩa các quy tắc làm sạch. Thứ hai, nhà phát
triển sẽ cần hiểu các khái niệm, các tiêu chuẩn và các công nghệ SOA cần thiết để
thực hiện các dịch vụ làm sạch. Ngoài ra, nếu sử dụng cách tiếp cận có cơng cụ cho
một máy chủ thời run-time, nhà phát triển và kiến trúc sư hệ thống sẽ cần có kiến
thức và kinh nghiệm để bảo đảm rằng máy chủ có khả năng mở rộng quy mô để
đáp ứng các thỏa thuận mức dịch vụ bắt buộc.
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ụ làm sạch
dữ liệu. Các chi phí có thể thấp nếu chỉ cần áp dụng các quy tắc chuẩn hóa cơ bản.
Các quy tắc làm sạch càng trở nên phức tạp, thì các chi phí phát triển thực hiện sẽ


càng cao. Chi phí gắn liền với phân tích dữ liệu, đi kèm với các chu kỳ phát triển

và thử nghiệm nhiều lần cần thiết để giải quyết tính phức tạp cũng cao hơn.
Khả năng tái sử dụng
Khả năng tái sử dụng trong các mẫu làm sạch dữ liệu được thực hiện thông qua
việc định nghĩa các quy tắc làm sạch để có thể áp dụng các quy tắc làm sạch đó ở
mức bản ghi thơng qua một dịch vụ hoặc thơng qua một q trình xử lý theo gói
cho dữ liệu lớn. Cơ hội tái sử dụng thứ hai là thơng qua việc sử dụng một quy trình
máy chủ chung để thực hiện các quy tắc làm sạch.
Về đầu trang
Kết luận
Mẫu làm sạch dữ liệu chỉ rõ một cách thực hành gợi ý để cải thiện chất lượng dữ
liệu của dữ liệu lưu giữ lâu dài hoặc vào lúc nhập dữ liệu hoặc sau khi nhập dữ
liệu.
Các vùng trọng tâm để áp dụng mẫu làm sạch dữ liệu
Cải thiện chất lượng và tính nhất quán của dữ liệu cho các nhu cầu thông tin quan
trọng, chẳng hạn như tên và địa chỉ của khách hàng. Như đã mô tả ở trên, mẫu làm
sạch dữ liệu có thể biến dữ liệu chưa nhất qn (và do đó, khơng dùng được) thành
một tài sản chiến lược có giá trị.
Các vùng nhiều rủi ro nếu áp dụng mẫu hợp nhất dữ liệu
Thiếu hiểu biết và định nghĩa chung về dữ liệu nghiệp vụ cốt lõi.
Thiếu các hướng dẫn nghiệp vụ và quản trị ổn định về chất lượng dữ liệu. Đặc tả
của các quy tắc làm sạch dữ liệu cần dựa trên các hướng dẫn được các chuyên gia
nghiệp vụ phê duyệt và phần lớn đã ổn định. Nếu các hướng dẫn về chất lượng
thay đổi quá thường xuyên hoặc chưa được phê duyệt, việc duy trì các quy tắc làm
sạch và triển khai liên tục các quy định mới có thể dẫn đến việc gia tăng đáng kể
tải công việc.
Thiếu sự hỗ trợ giữa các phòng ban, đặc biệt khi các ứng dụng truy cập và sửa đổi
thông tin vượt qua ranh giới các phòng ban. Mặc dù một tổ chức duy nhất có thể


cải thiện chất lượng dữ liệu của họ, các ứng dụng có thể thay đổi dữ liệu bên ngồi

phạm vi kiểm sốt của tổ chức, điều này có thể dẫn đến sự suy giảm chất lượng.
IBM Information Server là một nền tảng tích hợp dữ liệu khối lượng lớn để làm
sạch, chuyển đổi và bố trí lại dữ liệu.
WebSphere QualityStage là một trong những thành phần cốt lõi của danh mục này
nhằm cung cấp công nghệ làm sạch dữ liệu. WebSphere QualityStage hỗ trợ tiêu
chuẩn hóa, làm giàu thêm và so khớp dữ liệu văn bản dạng tự do. WebSphere
QualityStage rất quan trọng đối với các giải pháp Master Data Management (Quản
lý dữ liệu chủ). WebSphere QualityStage cho phép liên kết và loại bỏ trùng lặp các
bản ghi hay bên trong nhiều nguồn dữ liệu bằng cách áp dụng các quy tắc phân tích
cú pháp tinh vi và các hàm so khớp thống kê. Công cụ này cũng cho phép lựa chọn
một bản ghi "tốt nhất" duy nhất để lưu giữ lâu dài trên các nguồn bằng cách tự
động điền vào các giá trị thực thể còn thiếu, rỗng hoặc khơng đầy đủ, để có một
quan niệm tồn diện duy nhất về dữ liệu trải rộng trên nhiều hệ thống.
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 danh mục IBM Information Server)
trưng ra các khả năng quản lý thông tin như các dịch vụ. Nó đóng gói logic tích
hợp thông tin, 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 các chức năng này.
Điều quan trọng nhất là sản phẩm này có khả năng trưng ra việc làm sạch dữ liệu
thông qua một giao diện hướng dịch vụ như EJB, JMS (Java™ Message Service)
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. 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.



×