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

Tích hợp khai phá dữ liệu trong InfoSphere Warehouse với việc tạo báo cáo Cognos của IBM, Phần 4: Phân đoạn khách hàng với InfoSphere Warehouse và Cognos pptx

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 (842.97 KB, 37 trang )

Tích hợp khai phá dữ liệu trong InfoSphere Warehouse với việc tạo báo cáo
Cognos của IBM, Phần 4: Phân đoạn khách hàng với InfoSphere Warehouse
và Cognos
Nối tất cả lại cho nó
Benjamin G. Leonhardi, Kỹ sư phần mềm, IBM
Christoph Sieb, Kỹ sư phần mềm cao cấp, IBM
Dr. Michael J. Wurst, Kỹ sư phần mềm cao cấp, IBM
Tóm tắt: Trong các bài viết trước của loạt bài này, bạn đã tìm hiểu các kỹ thuật
khác nhau để tích hợp Khai phá dữ liệu InfoSphere Warehouse và các báo cáo
Cognos đơn giản. Bài viết cuối cùng này hướng dẫn cho bạn cách sử dụng một số
kỹ thuật tích hợp tương tự để tạo ra một báo cáo phức tạp hơn, tập trung vào
nhiệm vụ phân đoạn khách hàng. Phân đoạn khách hàng cho phép các công ty
phân cụm các khách hàng của họ thành các nhóm đặc trưng. Một vấn đề quan
trọng của nhiệm vụ này là giải thích cho người sử dụng ý nghĩa của các đoạn
khách hàng riêng rẽ. Các báo cáo Cognos tương tác có thể giúp bạn làm điều này.
Bài viết này sử dụng ví dụ theo từng bước một, để dạy cho bạn cách tạo một báo
cáo hiển thị trực quan các số liệu thống kê cụm và, vì thế, cho phép bạn tìm ra các
khách hàng nào là đặc biệt trong một đoạn cụ thể. Bài viết cũng cho bạn thấy cách
cho phép truy vấn ngược (ND: drill-through là một tính năng cho phép người dùng
từ báo cáo tổng hợp tìm ngược về tận bản ghi dữ liệu gốc. Sau đây gọi là truy vấn
ngược) để truy cập vào các thông tin chi tiết của khách hàng riêng biệt trong một
phân đoạn.
Mở đầu
Phân đoạn khách hàng cho phép bạn nhóm khách hàng thành các đoạn các khách
hàng tương tự như nhau. Để giải thích tại sao điều này có thể có ích, hãy xem xét
kịch bản sau đây. Bạn thu thập dữ liệu về các khía cạnh nhân khẩu học của khách
hàng của bạn (tuổi tác, nghề nghiệp, nơi cư trú, v.v ) cũng như dữ liệu về giao
dịch của họ (các mặt hàng đã mua, các hợp đồng, v.v ). Một phân tích về dữ liệu
đã kết hợp này có thể để lộ ra các nhóm khách hàng mà bạn chưa từng nghĩ về họ
trước đó, ví dụ, các khách hàng cao tuổi chi tiêu rất nhiều tiền nhưng không dùng
mua sắm trực tuyến. Thông tin về các hành vi tiêu biểu của các nhóm như vậy sau


đó có thể được bộ phận tiếp thị của bạn sử dụng để phát triển sản phẩm và các
dịch vụ chuyên sâu.
Về kỹ thuật, phân đoạn khách hàng là một trường hợp riêng của nhiệm vụ khai phá
dữ liệu tổng quát hơn được gọi là phân cụm dữ liệu. Phân cụm dữ liệu tự động
nhóm các bản ghi dữ liệu theo các đặc tính hoặc các tính năng của chúng thành các
cụm có các bản ghi dữ liệu tương tự với nhau. Thường có nhiều cách khác nhau để
định nghĩa các biện pháp tương tự phía dưới, tùy thuộc vào miền ứng dụng của
bạn. InfoSphere Warehouse cung cấp một cơ chế mạnh mẽ để tự động chọn biện
pháp tương tự này.
Bài viết này cung cấp một sự mô tả ngắn gọn về phân cụm dữ liệu và các phương
pháp phân đoạn khách hàng và các cách tiếp cận trong InfoSphere Warehouse. Sau
đó bài viết này thảo luận về những khả năng tổng hợp để tìm hiểu các đoạn khách
hàng và các cụm khác trong Cognos. Phần cuối của bài viết này cho bạn một ví dụ
từng bước về cách tạo và tìm hiểu các đoạn trong Cognos.


Phân đoạn khách hàng khi sử dụng InfoSphere Warehouse
InfoSphere Warehouse cung cấp một số phương pháp để phân cụm các bản ghi dữ
liệu. Bằng cách áp dụng các đối số này vào các bản ghi khách hàng của bạn, bạn
có thể tìm thấy các nhóm khách hàng tương tự như nhau. Một bước quan trọng
đầu tiên để đạt được điều này là xử lý trước dữ liệu của bạn. Dữ liệu khách hàng
có liên quan có thể nằm phân tán giữa các bảng hoặc cơ sở dữ liệu khác nhau, ví
dụ, cơ sở dữ liệu chứa thông tin nhân khẩu học có thể không cùng một cơ sở dữ
liệu chứa dữ liệu giao dịch. Nếu dữ liệu nằm phân tán, đầu tiên bạn cần biến đổi
nó để cho bạn nhận được một bảng có một hàng chính xác cho từng khách hàng.
InfoSphere Warehouse cung cấp các công cụ mạnh mẽ cho các loại chuyển đổi
này. Các công cụ chuyển đổi nằm ngoài phạm vi của bài viết này, nhưng bạn có
thể tìm thấy các thông tin chi tiết về cách sử dụng chúng trong Trung tâm Thông
tin InfoSphere Warehouse, được liên kết đến từ phần Tài nguyên.
Các dữ liệu mẫu được sử dụng trong bài viết này là một bảng có các khách hàng

của ngân hàng, như trong Hình 1. Dữ liệu này đã được chuyển đổi đầy đủ.
Một khi đã chuyển đổi dữ liệu của mình, bạn có thể trực tiếp áp dụng các phương
pháp phân cụm dữ liệu trong InfoSphere Warehouse. Hai thuật toán phân cụm có
sẵn là:
 Phân cụm nhân khẩu học đặc biệt thích hợp với các tập dữ liệu chứa một
hỗn hợp các trường rời rạc và liên tục (ví dụ, với nghề nghiệp và tuổi). Đây
là thuật toán mặc định được InfoSphere Warehouse sử dụng.
 Phân cụm Kohonen thích hợp hơn với các tập dữ liệu chỉ chứa các trường
nhị phân hoặc liên tục (ví dụ, số lượng các mặt hàng mà mỗi khách hàng đã
mua trong một tập các loại sản phẩm).
Trong ví dụ được mô tả trong bài viết này, phân cụm được áp dụng bằng cách sử
dụng toán tử Clusterer trong một luồng khai phá. Hoặc bạn có thể trực tiếp gọi câu
lệnh SQL sau:

call IDMMX.BuildClusModel('BANK.CUSTOMERS_CLUS',
'BANK.CUSTOMERS');


Trong cả hai trường hợp, một mô hình cụm được tạo ra trong bảng
IDMMX.CLUSTERMODELS.


Trích xuất thông tin liên quan từ mô hình cụm
Việc hiển thị trực quan và phân tích các mô hình cụm là một bước quan trọng
trong quá trình tích hợp khai phá dữ liệu và tạo báo cáo. Một mô hình cụm bao
gồm các số liệu thống kê mô tả mỗi cụm và cho phép bạn gán một bản ghi dữ liệu
đến chính xác một trong các cụm. Có nhiều cách để phân tích một mô hình cụm:
 So sánh các số liệu thống kê của một cụm với toàn bộ các số liệu thống kê.
Các cụm riêng chứa các bản ghi dữ liệu giống với mỗi bản ghi dữ liệu khác
và không giống với các bản ghi dữ liệu trong các cụm khác. Bằng cách so

sánh các số liệu thống kê của một cụm với toàn bộ các số liệu thống kê bạn
có thể xác định số liệu thống kê nào dành riêng cho một cụm. Ví dụ, nếu
tuổi trung bình của tất cả các khách hàng là 40 và tuổi trung bình của khách
hàng trong một đoạn là 20, thì bạn có thể kết luận rằng đoạn này có đặc
điểm là chứa các khách hàng trẻ tuổi.
 Thực hiện truy vấn ngược (drill-through) các bản ghi dữ liệu riêng. Việc
phân tích các bản ghi dữ liệu riêng như là các đại diện của cụm là một cách
đơn giản, nhưng thường là cách có tác dụng mạnh mẽ để có được một ý
tưởng về các bản ghi dữ liệu mà một cụm đang chứa.
 Định nghĩa một biện pháp liên quan của cụm ứng dụng cụ thể. Ví dụ, bạn
có thể chỉ quan tâm về các đoạn có chứa nhiều hơn mười nghìn khách hàng,
với mỗi khách hàng chi tiêu ít nhất một trăm đô la một tháng. Một tiêu
chuẩn như vậy sẽ giúp lọc hầu hết các cụm và thực hiện những phân tích
hiệu quả hơn, đặc biệt là nếu có nhiều đoạn.
Bạn có thể sử dụng trình hiển thị trực quan (Visualizer) đi kèm với InfoSphere
Warehouse để xem xét một mô hình cụm (xem Hình 4). Trình hiển thị trực quan
cho phép bạn phân tích các số liệu thống kê kích thước và đặc tính của từng cụm
(đoạn khách hàng). Trong khi hiển thị trực quan này có tác dụng mạnh mẽ, nó chỉ
cho phép so sánh các số liệu thống kê, không phải cho truy vấn ngược (drill-
through) hoặc cho các tiêu chuẩn ứng dụng cụ thể. Tuy nhiên, Cognos rất phù hợp
cho các loại nhiệm vụ hiển thị trực quan.
Để cho phép hiển thị trực quan của các cụm trong Cognos hoặc theo bất kỳ cách
tùy chỉnh khác nào, thông tin trong một mô hình cụm đầu tiên phải được trích xuất
theo một dạng thích hợp. Với InfoSphere Warehouse, bạn có thể đạt được điều này
bằng cách sử dụng hàm trích xuất bảng. Bạn có thể tìm thêm thông tin về các hàm
này trong bài viết thứ hai của loạt bài này, được liên kết đến từ phần Tài nguyên.
Các mô hình cụm được lưu trữ theo định dạng PMML (Predictive Model Markup
Language - Ngôn ngữ đánh dấu mô hình dự báo) trong cơ sở dữ liệu. Chúng chứa
các thông tin về:
 Sự phân bố của các giá trị trong một cụm.

 Số lượng các bản ghi trong một cụm.
 Tầm quan trọng của các biến cho mỗi cụm.
 Tính đồng nhất của cụm.
 v.v.
Bạn có thể sử dụng thủ tục đã lưu trữ với InfoSphere Warehouse để trích xuất
thông tin này vào các tập kết quả có thể được Cognos (hoặc bất kỳ ứng dụng khác
có thể truy cập dữ liệu qua SQL) sử dụng. Bài viết thứ hai của loạt bài này đã mô
tả cách sử dụng phương thức IDMMX.DM_GETCLUSTERS để trích xuất thông
tin cơ bản trên mỗi cụm. Ngoài các thông tin cơ bản, bạn cũng có thể trích xuất
các số liệu thống kê cho mỗi cụm như được chỉ ra trong lệnh sau đây:
SELECT * FROM TABLE(IDMMX.DM_GETCLUSTERSTATS((SELECT
MODEL FROM IDMMX.CLUSTERMODELS
WHERE MODELNAME='IDMMX.OUTLIERMODEL'))) AS CT


Lệnh trên trả về một bảng chứa tần số dự kiến cục bộ và toàn bộ cho mỗi kết hợp
của cụm, trường và giá trị trường. Phần tiếp theo của bài viết này cho bạn thấy
cách sử dụng thông tin này để tạo ra các báo cáo Cognos tương tác để tìm hiểu các
cụm.
Tìm hiểu các đoạn khách hàng và các mô hình cụm khác trong Cognos
Hiển thị trực quan các số liệu thống kê điển hình của các cụm Cognos cung cấp
một số widget mạnh mẽ để hiển thị trực quan sự phân bố của dữ liệu trong một
bảng. Đặc biệt quan trọng là các biểu đồ hình tròn (pie) cho các giá trị danh định
và các hoành đồ cho các giá trị liên tục. Sau đây trong bài viết này bạn sẽ học cách
tạo ra các hiển thị trực quan dựa trên các bảng số liệu thống kê cụm được trích
xuất từ các mô hình khai phá phía dưới. Hình 12 cho thấy một ví dụ về kiểu hiển
thị trực quan này.
Triển khai thực hiện truy vấn ngược (drill-through) từ mô hình khai phá dữ liệu
theo dữ liệu khách hàng
Các mô hình Khai phá dữ liệu chứa thông tin định lượng và thống kê về dữ liệu

mà chúng mô tả. Tuy nhiên, chúng không chứa các bản ghi dữ liệu ban đầu. Vì
việc khai phá dữ liệu thường được sử dụng để phân tích các tập dữ liệu rất lớn, nên
việc duy trì các bản ghi riêng rẽ sẽ không hiệu quả và trong một số trường hợp
thậm chí là không thể. Tuy nhiên, đôi khi thật là có ích để có thể xem các bản ghi
dữ liệu do một cụm cụ thể biểu diễn. Kiểu hoạt động này được gọi là truy vấn
ngược (drill-through).
Để cho phép truy vấn ngược (drill-through) từ một đoạn khách hàng đến các bản
ghi dữ liệu thuộc đoạn này, bạn phải lựa chọn chỉ các bản ghi thuộc về một cụm cụ
thể. Bạn có thể làm điều này bằng cách cho điểm tất cả bản ghi của khách hàng
dựa vào các mô hình phân cụm và trả về chỉ các khách hàng thuộc cụm đó. Một
cách tiếp cận tương tự được sử dụng trong ví dụ Phát hiện sai lệch được mô tả
trong bài viết thứ hai của loạt bài này. Về lý thuyết, bạn có thể thực hiện cho điểm
lúc đang chạy khi người sử dụng chọn một cụm. Tuy nhiên, mặc dù việc cho điểm
cụm lúc đang chạy là tương đối nhanh, điều này vẫn sẽ mất nhiều thời gian. Do
đó, đúng hơn là bạn thường tính toán trước các thông tin liên quan với đoạn khách
hàng nào thuộc về một khách hàng cụ thể trước khi bản ghi được đưa ra cho người
dùng.
Ý tưởng cơ bản là một khi người dùng chọn một đoạn khách hàng, một bản ghi
mới được mở ra, sử dụng một mệnh đề WHERE đơn giản để trả về tất cả các
khách hàng từ bảng các khách hàng đã cho điểm thuộc đoạn này. Cách tiếp cận
này có một số lợi thế. Quá trình khai phá và quá trình cho điểm tốn thời gian có
thể được thực hiện cùng nhau trước khi bản ghi được hiển thị cho người dùng. Mô
hình khai phá XML là nhỏ và không chứa bất kỳ dữ liệu khách hàng nào. Các tập
dữ liệu lớn chứa thông tin cho điểm được lưu trữ như các bảng DB2 và có thể
được truy vấn hiệu quả. Đối với các tập dữ liệu thực sự lớn, có thể cần thêm các
chỉ mục vào bảng cho điểm.
Sử dụng thước đo liên quan đến cụm tùy chỉnh
Việc xác định một cụm hoặc một đoạn khách hàng nào cần quan tâm thường đòi
hỏi kiến thức về lĩnh vực ứng dụng. Cognos giúp bạn dễ dàng đưa vào thước đo
tùy chỉnh kết hợp thông tin đa dạng về các cụm thành một tiêu chuẩn phù hợp duy

nhất. Khả năng tô mầu các hàng trong một báo cáo Cognos dựa trên số liệu thống
kê này đặc biệt thú vị trong ngữ cảnh này.


Một ví dụ thực tế: các khách hàng của ngân hàng
Ví dụ sau đây dựa vào bảng BANK.BANKCUSTOMERS là một trong những mẫu
đi kèm với InfoSphere Warehouse. Dữ liệu mẫu từ bảng này được chỉ ra trong
Hình 1.

Hình 1. Dữ liệu mẫu từ bảng BANK.BANKCUSTOMERS

Ví dụ này cho bạn thấy cách sử dụng InfoSphere Warehouse DesignStudio để tạo
ra một luồng khai phá phân cụm các bản ghi dữ liệu từ bảng này thành các đoạn
khách hàng khác nhau. Sau đó bạn có thể sử dụng mô hình cụm được tạo ra để cho
điểm các bản ghi trong bảng, tạo ra một bảng mới có tên là CUSTOMERSCORED
có chứa dữ liệu gốc với thông tin bổ sung về mỗi khách hàng thuộc về đoạn nào.
Làm theo các bước sau để tạo một luồng khai phá mới:
1. Kéo một toán tử Table Source tới trình soạn thảo.
2. Nhấn đúp vào toán tử Table Source để mở các đặc tính của nó. Chỉ rõ
BANK.BANKCUSTOMERS làm Source Database Table (Bảng cơ sở dữ
liệu nguồn) và nhấn OK.
3. Kéo một toán tử Clusterer vào trình soạn thảo và nối toán tử Source Table
vào nó.
4. Nhấn đúp vào toán tử Clusterer để mở các đặc tính của nó. Thay đổi tên của
mô hình được tạo ra thành BANK.CLUSTER trên trang đặc tính thứ hai và
nhấnOK.
5. Kéo một toán tử Scorer (Trình cho điểm) vào trình soạn thảo.
6. Nối cổng ra của toán tử Clusterer vào cổng đầu vào mô hình của toán tử
Scorer.
7. Nối cổng ra của toán tử Table Source đến cổng đầu vào bảng của toán tử

Scorer.
8. Nhấn chuột phải vào cổng ra của toán tử Scorer và chọn Create Suitable
Table
9. Trên trang của trình thủ thuật đầu tiên, hãy chọn lược đồ BANK, nhập vào
tên bảng là CUSTOMERSSCORED và nhấn Finish. Việc này kết nối một
toán tử Table Target với luồng đó.
10. Nếu bạn muốn chạy luồng đó nhiều lần, nhấn đúp chuột vào toán tử Table
Target để mở các đặc tính của nó, đánh dấu chọn hộp kiểm tra Delete
Previous Content và nhấn OK.

Hình 2. Luồng khai phá được sử dụng cho phân đoạn khách hàng

(Xem một phiên bản mở rộng của Hình 2.)
Luồng khai phá này tạo ra dữ liệu khai phá mà bạn sẽ tìm hiểu cách hiển thị trong
một báo cáo Cognos về sau trong bài viết này. Hai kết quả của luồng đó là:
 Mô hình phân cụm BANK.CLUSTER, hiển thị thông tin về các đoạn khách
hàng.
 Bảng BANK.CUSTOMERSCORED, trong đó chứa các bản ghi khách
hàng ban đầu có hai cột bổ sung tên là CLUSTER_QUALITY và
CLUSTER_ID. CLUSTER_QUALITY cho biết bản ghi đang phù hợp với
cụm này tốt như thế nào. CLUSTER_ID là mã định danh của cụm có bản
ghi là phù hợp nhất với nó. Ví dụ truy vấn ngược (drill-through) trong bài
viết này sử dụng mã định danh cụm để lựa chọn các bản ghi của khách
hàng trong lúc truy vấn ngược (drill-through).

Hình 3. Dữ liệu mẫu từ bảng kết quả, BANK.CUSTOMERSCORED

(Xem một phiên bản mở rộng của Hình 3.)



Tạo một báo cáo phân đoạn khách hàng tương tác với Cognos
Phần này của bài viết này cho bạn thấy cách sử dụng Cognos để xây dựng một báo
cáo phân đoạn khách hàng. Báo cáo này bao gồm một trang chính cho thấy các
đoạn khách hàng đã tính toán và có một liên kết đến một bản ghi truy vấn ngược
(drill-through) cho thấy các bản ghi của khách hàng cho mỗi cụm.
Trang chính chứa thông tin tương tự với trình hiển thị trực quan phân cụm đi kèm
với Khai phá dữ liệu InfoSphere. Nó chứa một danh sách các đoạn khách hàng hay
các cụm và cung cấp thông tin bổ sung về các trường của các cụm, ví dụ, số dư
ngân hàng trung bình. Các biểu đồ hình tròn (Pie) hiển thị sự phân bố của các
trường quan trọng như là thẻ ngân hàng.
Như trong các bài viết trước của loạt bài này, thông tin về các đoạn, các trường
v.v được trích xuất bằng cách sử dụng API của SQL của Khai phá dữ liệu
InfoSphere Warehouse. Bản ghi nối các bảng được hàm API trả về để tạo ra báo
cáo phân đoạn khách hàng. Bài viết thứ hai của loạt bài này cung cấp các chi tiết
về liên kết của các trang báo cáo.

Hình 4. Trình hiển thị trực quan phân cụm của InfoSphere Warehouse

Nhập khẩu dữ liệu cụm vào Cognos
Sau khi tạo mô hình phân cụm và bảng khách hàng đã cho điểm, bạn có thể nhập
khẩu cả hai vào trong siêu dữ liệu Cognos bằng Cognos Framework Manager. Đối
với báo cáo phân đoạn khách hàng, bạn cần phải nhập khẩu và nối ba tập kết quả:
 Customers (Các khách hàng). Bảng khách hàng đã cho điểm mà bạn đã tạo
trong phần trước. Việc này được sử dụng để truy vấn ngược (drill-through)
tới dữ liệu khách hàng.
 ClusterSegments (Các đoạn cụm). Tổng quan về tất cả các cụm của mô
hình phân cụm đã tạo ra, được hàm IDMMX.DM_GETCLUSTERS trả về.
Việc này trả về một bảng với một hàng cho từng cụm và là cơ sở của trang
báo cáo chính.
 ClusterSegmentStatistics (Các số liệu thống kê đoạn cụm). Một bảng chứa

các số liệu thống kê hoặc thông tin cụm về phân bố trường cho từng cụm,
ví dụ, việc phân bố Tuổi (Age) cho mỗi cụm. Việc này có thể được tìm nạp
bằng hàm IDMMX.DM_getClusterStats của InfoSphere Warehouse. Bảng
này được sử dụng cho để hiển thị thông tin trường chi tiết cho các cụm.
Để bắt đầu tạo các báo cáo phân đoạn khách hàng, hãy tạo ra một dự án Cognos
Framework Manager được kết nối đến cơ sở dữ liệu mẫu DWESAMP của
InfoSphere Warehouse và có bảng BANK.CUSTOMERSCORED. Có thể tìm thấy
các hướng dẫn chi tiết về cách làm này trong bài viết đầu tiên của loạt bài này,
được liên kết đến từ phần Tài nguyên. Đó là thực tế tốt để tạo ra một chủ thể truy
vấn trong vùng tên PresentationView có chứa thông tin bạn cần từ cơ sở dữ liệu.
Việc này cung cấp cho bạn một tầng trừu tượng trên các chủ thể truy vấn được tạo
ra từ các câu lệnh SQL.
Hãy làm theo các bước này để tạo ra chủ thể truy vấn bảng khách hàng được
báo cáo sử dụng:
1. Tạo một chủ thể truy vấn mới tên là Customers (Các khách hàng) trong
vùng tên PresentationView từ mô hình (hiện có các chủ thể truy vấn và các
mục truy vấn).
2. Thêm tất cả các mục truy vấn từ chủ thể truy vấn CUSTOMERSCORED và
thay đổi các tên có tính mô tả nhiều hơn. Ví dụ, "Customer segment" (Đoạn
khách hàng) cho CLUSTER_ID này.
Làm theo các bước sau để tạo ra chủ thể truy vấn mô tả cụm
CustomerSegments của hàm bảng DB2:
1. Chọn Database DWESAMP (Cơ sở dữ liệu DWESAMP) trong thư mục
Data Sources của Project Viewer và thay đổi đặc tính Query Processing
(Xử lý truy vấn) trong khung nhìn các đặc tính thành Limited Locale (Vị trí
bị hạn chế). Việc này cho phép các chủ thể truy vấn từ SQL mà Cognos vẫn
chưa biết đến.
2. Tạo một chủ thể truy vấn mới có tên là ClusterSegments trong vùng tên
PresentationView và chọn mô hình chủ thể truy vấn từ một nguồn dữ liệu.
3. Trên trang "select a data source" (chọn một nguồn dữ liệu), chọn

DWESAMP và xóa dấu chọn của hộp kiểm tra Run database query
subject wizard (Chạy trình thủ thuật chủ thể truy vấn cơ sở dữ liệu) (trình
thủ thuật chủ thể truy vấn chỉ làm việc với SQL chuẩn) và nhấn Finish.
4. Sau khi tạo chủ thể truy vấn, trình thủ thuật Query Subject Definition (Định
nghĩa chủ thể truy vấn) mở ra. Nhập mã SQL để trả về các cụm từ mô hình,
ở đây BANK.CLUSTER là tên của mô hình cụm được tạo ra trong quá
trình chạy phân cụm.
SELECT * FROM TABLE(IDMMX.DM_GETCLUSTERS((SELECT MODEL
FROM IDMMX.CLUSTERMODELS
WHERE MODELNAME='BANK.CLUSTER'))) AS CT

5.
6. Bạn cần thiết lập kiểu SQL của truy vấn là Native (Nguyên gốc), để nói cho
Cognos biết chuyển SQL tới cơ sở dữ liệu thay vì thông dịch nó. Để làm
việc này, chuyển đến thẻ Query Information (Thông tin truy vấn) của các
đặc tính chủ thể truy vấn. Chọn Options (Các tùy chọn) và thay đổi kiểu
SQL trong thẻ cài đặt SQL sang Native.
7. Việc chạy Test Sample (Thử nghiệm mẫu) sẽ trả về một bảng có các cụm
của mô hình chỉ ra dưới đây:

Hình 5. Các kết quả thử nghiệm của chủ thể truy vấn
CustomerSegments

8. Lặp lại các bước trên với chủ thể truy vấn ClusterSegmentStatistics bằng
cách sử dụng SQL sau đây:
SELECT * FROM TABLE(IDMMX.DM_getClusterStats((SELECT MODEL
FROM IDMMX.CLUSTERMODELS
WHERE MODELNAME='BANK.CLUSTER')))

9.

Chủ thể truy vấn ở trên có chứa thông tin về phân bố trường của mỗi cụm:
 Cột ID chứa mã định danh cụm.
 Cột FIELDNAME chứa tên của trường nằm trong mô hình và ví dụ, có thể
được sử dụng để truy vấn cho các số liệu thống kê về trường Age.
 Cột NUMVALUE được sử dụng cho các trường có các giá trị số. Đối với
các trường số, thuật toán phân cụm tạo ra một tập các ngăn chứa (bin), ví
dụ, "Age 0-10, 10-20 ". NUMVALUE đại diện cho ranh giới của mỗi
ngăn.
 Cột CATVALUE được sử dụng cho các trường có giá trị phân loại. Điều đó
có nghĩa là có một số các giá trị cố định trong trường này, ví dụ, "Khách
hàng đang sử dụng một thẻ ngân hàng: CÓ/KHÔNG".
 Cột FREQUENCY mô tả số lượng khách hàng của cụm này có ở trong
ngăn chứa
 Cột EXPECTEDFREQUENCY mô tả số lượng khách hàng sẽ có trong
ngăn này nếu chúng đã được phân bố đều trên tất cả các cụm.
Bạn có thể sử dụng bảng này để thêm thông tin chi tiết về các đặc điểm khách
hàng vào báo cáo Cognos. Ví dụ, bài viết này cho bạn thấy cách sử dụng các biểu
đồ hình tròn để biểu diễn một trường thể loại và các biểu đồ thanh để hiển thị sự
phân bố của một trường số.

Hình 6. Các kết quả thử nghiệm của chủ thể truy vấn
CustomerSegmentStatistics

Để tạo một bản ghi nối các thông tin giữa các chủ thể này, bạn phải tạo ra các mối
quan hệ giữa các bảng. Các id cụm luôn luôn là khóa nối.
Làm theo các bước này để tạo ra các mối quan hệ giữa các bảng:
1. Chọn Create Relationship (Tạo mối quan hệ) từ trình đơn ngữ cảnh của
chủ thể truy vấn khách hàng.
2. Đối với chủ thể truy vấn bên trái, chọn CLUSTER_ID của chủ thể khách
hàng và thiết lập cardinality (số các yếu tố trong một tập hợp) là 1 n. Việc

này cho biết có nhiều bản ghi thuộc cùng một cụm.
3. Đối với chủ thể truy vấn bên phải thêm chủ thể truy vấn
CustomerSegments, chọn cột ID và thiết lập cardinality là 1 1. Việc này
cho biết có một hàng cho một cụm.
4. Nhấn OK.
5. Lặp lại các bước trên để tạo ra một mối quan hệ giữa CustomerSegments và
CustomerSegmentStatistics. Chủ thể nối bên trái là CustomerSegments với
cardinality là 1 1. Chủ thể nối bên phải là CustomerSegmentStatistics với
cardinality là 1 n.
6. Lặp lại các bước trên để tạo ra một mối quan hệ giữa khách hàng và
CustomerSegmentStatistics. Chủ thể nối bên trái là Customers với
cardinality là 1 n. Chủ thể nối bên phải là CustomerSegmentStatistics với
cardinality là 1 n.
Bây giờ bạn đã tạo ra các chủ thể truy vấn cần thiết cho báo cáo Cognos và có thể
triển khai một gói CustomerSegments chứa PresentationView của dự án cho
Cognos Content Store. Các hướng dẫn về cách tạo và triển khai gói được mô tả
trong bài viết đầu tiên của loạt bài này.

Hình 7. Tài nguyên được tạo ra trong Framework Manager

Tạo một báo cáo phân đoạn khách hàng với Cognos Record Studio
Phần này mô tả cách tạo một báo cáo có ba trang báo cáo được liên kết với nhau.
Để có một mô tả chi tiết hơn về cách liên kết các báo cáo với nhau hãy tham khảo
bài viết thứ hai của loạt bài này.
Ba trang báo cáo là:
 Trang báo cáo chính cho thấy các đoạn khách hàng và một số thông tin
quan trọng về đoạn, chẳng hạn như độ tuổi trung bình, số dư trung bình,
kích thước cụm, v.v Người dùng có thể nhấn chuột vào một cụm với một
truy vấn ngược (drill-through) đến dữ liệu khách hàng của cụm đó. Người
sử dụng cũng có thể thấy một phân bố tuổi chi tiết hơn cho cụm đó bằng

cách chọn trường tuổi.
 Trang truy vấn ngược (drill-through) của khách hàng cho thấy các báo cáo
thuộc một cụm.
 Trang phân bố tuổi hiển thị một biểu đồ thanh về sự phân bố tuổi của một
cụm khi được so sánh với tất cả khách hàng.
Các bước sau đây mô tả cách xây dựng hai trang được liên kết đầu tiên. Việc này
được thực hiện sao cho chúng sẵn sàng để liên kết đến khi bạn tạo trang báo cáo
chính. Trang truy vấn ngược (drill-through) của khách hàng tương tự như trang
khách hàng được tạo ra trong bài viết thứ hai của loạt bài này và cho thấy một
bảng các bản ghi khách hàng được sử dụng trong chủ thể truy vấn khách hàng
được lọc bởi mã định danh (id) cụm. Thêm ID cụm vào bản ghi này như làm một
tham số.
Làm theo các bước này để tạo ra trang truy vấn ngược (drill-through) của
khách hàng:
1. Tạo một báo cáo mới trong Cognos Report Studio khi sử dụng gói
CustomerSegments.
2. Thêm một đối tượng danh sách vào báo cáo.
3. Thêm chủ thể truy vấn khách hàng vào danh sách bằng cách kéo nó từ
khung nhìn Insertable Objects.
4. Thêm một bộ lọc vào danh sách bằng cách chọn danh sách và nhấn vào
biểu tượng Filters trên thanh công cụ hoặc chọn Data->Filters từ trình
đơn.
5. Trong trình thủ thuật sử dụng biểu tượng Add để thêm một bộ lọc Details.
6. Trên trang Detail Filter Expression (Mô tả chi tiết biểu thức lọc), thêm mã
được hiển thị bên dưới Expression Definition (Định nghĩa biểu thức). (Phân
đoạn khách hàng là mã định danh cụm, nhưng bạn có lẽ đã cho nó một cái
tên khác.)
[PresentationView].[Customers].[Customer segment] = ?clusterid?

7.

8. Cognos tự động phát hiện từ khoá clusterid (mã định danh cụm) được bao
quanh bởi các ký tự dấu ? và thêm nó vào danh sách tham số của báo cáo.
9. Nhấn OK để xác nhận bộ lọc.
10. Thay đổi văn bản tiêu đề báo cáo và các tiêu đề cột để làm cho chúng có ý
nghĩa hơn.
11. Lưu báo cáo của bạn là CustomerDrillthrough.

Hình 8. Cognos Report Studio với báo cáo CustomerDrillthrough

(Xem một phiên bản mở rộng của Hình 8.)
Trang báo cáo thứ hai cho thấy một biểu đồ thanh phân bố tuổi chi tiết cho một
cụm cụ thể. Để thực hiện điều này, bạn sử dụng dữ liệu từ chủ thể truy vấn
CustomerSegmentStatistics và lọc FIELDNAME theo AGE và mã định danh cụm
từ một tham số. Sau đó thêm hai chuỗi vào biểu đồ cột. Một chuỗi dành cho sự
phân bố tuổi của cụm này, nằm trong mục truy vấn FREQUENCY và chuỗi khác
dành cho phân bố của tất cả các cụm, nằm trong mục truy vấn
EXPECTEDFREQUENCY.
Làm theo các bước sau để tạo trang báo cáo phân bố tuổi:
1. Tạo một báo cáo mới cho gói tương tự. Bạn có thể làm việc này bằng cách
chọn File->New trong Report Studio. Trong danh sách khuôn mẫu chọn
Chart và sử dụng kiểu biểu đồ cột đầu tiên.
2. Từ chủ thể truy vấn CustomerSegmentStatistics trong khung nhìn Insertable
Objects, kéo các mục truy vấn FREQUENCY và
EXPECTEDFREQUENCY vào Series: field (Chuỗi: trường) của biểu đồ
cột.
3. Từ chủ thể truy vấn tương tự, kéo mục truy vấn FREQUENCY đến Default
Measure (y-Axis): field (Phép đo mặc định (trục y): trường) của biểu đồ
cột.
4. Từ chủ thể truy vấn tương tự, kéo mục truy vấn NUMVALUE đến
Category (x-Axis): field (Thể loại (trục x): trường) của các biểu đồ cột.

5. Thay hàm Aggregation của trường NUMVALUE bằng None. Có một cách
để làm việc này là chọn trường NUMVALUE trong Category (x-Axis):
field. Khi bạn thấy các đặc tính của trường này trong trình đơn đặc tính ở
phía dưới bên trái của màn hình, hãy tìm Data Item->Aggregate Function
(Tổng hợp trường hàm) và thay đổi nó là None.
6. Thay đổi các mô tả trục để làm cho chúng có ý nghĩa hơn. Bạn có thể làm
việc này bằng cách mở Axis Titles: field (Các tiêu đề trục: trường) trong
biểu đồ cột và nhập văn bản cho các trục đứng và ngang.
7. Thay đổi mô tả của chuỗi. Chọn mỗi chuỗi một lần. Trong phần Properties
thay đổi Text Source->Source Type to Text và nhập một mô tả vào Text
Source->Text field.

×