Báo cáo data mining trong sql server 2008, báo cáo hay
Trang 1Khoa Toán – Tin Học
-oOo -Bộ môn: Trí Tuệ Nhân Tạo
DATA MINING TRONG
SQL SERVER 2008
Giáo viên hướng dẫn: Th.S Phạm Thi Vương
Sinh viên thực hiện: Bùi Ngô Dạ Thảo 0611203
Trần Quang Ánh 0611304 Trần Thượng Khanh0611082
Thành phố Hồ Chí Minh, tháng 1 – 2010
Trang 2Mục lục
Lời mở đầu 3
I Giới thiệu Data Mining 4
1.1 Lịch sử Khai khoáng dữ liệu 4
1.2 Tổng quan một số phương pháp trong khai khoáng dữ liệu 4
1.2.1 Cây quyết định (Decision Tree) 4
1.2.2 Các phương pháp phân lớp và hồi quy 7
1.3 Bài toán thực tế của khai khoáng dữ liệu 8
1.3.1 Công ty Etoys 8
1.3.2 Tập đoàn Unilever 9
1.3.3 Bài toán của công ty Wireless 9
1.3.4 Phân tích dữ liệu mua hàng tiêu dùng của khách hàng 10
II Khai khoáng dữ liệu với SQL SERVER 2008 11
2.1 Sơ lược về SQL SERVER 11
2.1.1 Lịch sử SQL SERVER 11
2.1.2 Điểm phát triển của SQL SERVER 2008 13
2.2 Các quy trình làm việc của Data Mining 14
III Các khái niệm về data mining trong Sql Server 2008 19
3.1 Thuộc tính: 19
3.2 Trạng thái 20
3.3 Case 21
3.4 Khoá (Key) 23
3.6 Các đối tượng trong DMX 25
3.6.1 Mining Structure 25
3.6.2 Mô hình khai khoáng (mining model) 27
3.6.3 Dự đoán (Prediction) 27
IV CÁCH SỬ DỤNG SQL SERVER DATA MINING 2008 28
4.1. Giới thiệu về Business Intelligence Development Studio 29
4.1.1 Cách sử dụng thông qua giao diện 30
4.1.2 Chế độ Offline và chế độ Immediate 32
4.1.3 Tạo các đối tượng data mining 37
4.1.4 Khám phá dữ liệu 42
4.2 Tạo và hiệu chỉnh mô hình 44
4.2.1 Cấu trúc và mô hình 44
Trang 34.2.2 Cách sử dụng data mining wizard 45
4.2.3 Cách tạo cấu trúc và mô hình mining movieclick 52
4.2.4 Cách sử dụng Data Mining Designer 54
4.2.5 Processing 58
4.3 Sử dụng mô hình 59
4.3.1 Tìm hiểu Model Viewer 59
4.3.2 Cách sử dụng biểu đồ Mining 60
4.3.3 Cách sử dụng Crossvalidation 61
4.3.4 Thực hiện một câu truy vấn trên mô hình movieclick 64
4.3.5 Cách tạo báo cáo Data Mining 65
V Một số công cụ datamining trong SQL Server 2008 67
5.1 Microsoft Association Rules 67
5.1.1 Giới thiệu về Microsoft Association Rules 67
5.1.2 Nguyên lý chính của giải thuật luật kết hợp 67
5.1.3 Ứng dụng của luật kết hợp 68
5.1.4 Sử dụng Microsoft Association Rules 69
5.1.5 Giải thích về Mining Model Viewer 73
5.2 Giới thiệu về Microsoft Time Series 76
Tài liệu tham khảo 79
Lời cảm ơn 80
Trang 4Lời mở đầu
Hiện nay trên thế giới, dữ liệu số ngày càng tăng trưởng với tốc độ chóng mặt Các giao dịch tài chính, phân tích quảng cáo trực tuyến, thông tin về sở thích của người tiêu dùng, vàcác kết quả nghiên cứu khoa học có ý nghĩa to lớn đều hướng đến khối lượng dữ liệu khổng lồ đó Song song với sự phát triển của công nghệ, nhu cầu tích hợp công nghệ vào tất cả các lĩnh vực của đời sống con người cũng ngày càng phát triển mạnh mẽ
Cùng với sự thay đổi xu hướng với tốc độ như hiện nay, chúng ta không thể có đủ thời giancho việc xem xét dữ liệu lịch sử chỉ để xác định điều gì đã xảy ra để đưa ra chiến thuật điềukhiển hiệu quả các yếu tố tác động Vì vậy, một vấn đề bức thiết đặt ra là phải có một công
cụ để khai khoáng dữ liệu một cách hiệu quả và nhanh chóng Việc phân tích tự động hay các thuật toán phức tạp để xác định xu hướng và dự báo các vấn đề trong tương lai đang là một bài toán mở SQL Server 2008 đã phát triển bộ công cụ Data Mining hiệu quả và phần nào giải quyết được một số vấn đề nan giải nói trên
Nhóm tác giả
Trang 5I Giới thiệu Data Mining
Khai khoáng dữ liệu ( Data Mining ) là một khái niệm bao hàm các kỹ thuật trong việc tìm ra các giá trị thông tin tiềm ẩn trong các dữ liệu lớn , nhiều bộ dữ liệu Theo đó bản chất của khai khoáng dữ liệu là sử dụng toán học để tìm ra các bản chất, phân tích đánh giá các bộ dữ liệu , và sử dụng một số kỹ thuật để tìm ra các mẫu cótính chính quy
Trong “Phát hiện tri thức trong cơ sở dữ liệu” của hai tác giả Fayyad, Shapiro và Smyth ( 1988 ) đã chỉ ra quá trình tìm kiếm các tri thức có ích từ nhiều
Piatestsky-bộ dữ liệu hoặc các Piatestsky-bộ dữ liệu lớn Và khai khoáng dữ liệu nằm trong quá trình này
Hình : mô tả quá trình Tìm kiếm tri thức trong dữ liệu
Và cho đến này khai khoáng dữ liệu vẫn là một vấn đề được nghiên cứu và sử dụng rất nhiều trong các lĩnh vực : tài chính , kinh tế , dự báo thị trường , khoa học
I.2.1 Cây quyết định (Decision Tree)
Cây quyết định là một mô hình , kỹ thuật máy học dung trong dự báo các thông tin dựa trên việc tính toán các xác suất có điều kiện Việc kết hợp giữa các chứng minh toán học và tính toán nhằm hỗ trợ việc mô tả , tổng quát các dữ liệu cho trước
Trong lĩnh vực máy học , cây quyết định là một kiểu mô hình dự báo (predictive
model), nghĩa là một ánh xạ từ các quan sát về một sự vật , hiện tượng tới các kết luận về giá trị mục tiêu của sự vật , hiện tượng Mỗi một nút trong (internal node) tương ứng với
Trang 6Mỗi nút lá đại diện cho giá trị dự đoán của biến mục tiêu, cho trước các giá trị của các biếnđược biểu diễn bởi đường đi từ nút gốc tới nút lá đó Kỹ thuật học máy dùng trong cây
quyết định được gọi là học bằng cây quyết định, hay chỉ gọi với cái tên ngắn gọn là cây quyết định.
Học bằng cây quyết định cũng là một phương pháp thông dụng trong khai phá dữ liệu Khi đó, cây quyết định mô tả một cấu trúc cây, trong đó, các lá đại diện cho các phân loại còn cành đại diện cho các kết hợp của các thuộc tính dẫn tới phân loại đó Một cây quyết định có thể được học bằng cách chia tập hợp nguồn thành các tập con dựa theo một kiểm tra giá trị thuộc tính Quá trình này được lặp lại một cách đệ qui cho mỗi tập con dẫn xuất Quá trình đệ qui hoàn thành khi không thể tiếp tục thực hiện việc chia tách được nữa, hay khi một phân loại đơn có thể áp dụng cho từng phần tử của tập con dẫn xuất Một bộ
phân loại rừng ngẫu nhiên (random forest) sử dụng một số cây quyết định để có thể cải
thiện tỉ lệ phân loại
Cây quyết định cũng là một phương tiện có tính mô tả dành cho việc tính toán các xác suất có điều kiện
Cây quyết định có thể được mô tả như là sự kết hợp của các kỹ thuật toán học và tính toán nhằm hỗ trợ việc mô tả, phân loại và tổng quát hóa một tập dữ liệu cho trước
Dữ liệu được cho dưới dạng các bản ghi có dạng:
(x, y) = (x 1 , x 2 , x 3 , x k , y)
Biến phụ thuộc (dependant variable) y là biến mà chúng ta cần tìm hiểu, phân loại hay tổng quát hóa x 1 , x 2 , x 3 là các biến sẽ giúp ta thực hiện công việc đó
Các loại cây quyết định :
Cây phân loại : nếu y là một biến phân loại như : nắng mưa , nam hoặc nữ
Cây quyết định : dùng để ước lượng các hàm giá trị thực thay vì sử dụng phương pháp phân loại
Ví dụ cụ thể : Khanh là quản lý của một câu lạc bộ đánh golf nổi tiếng Anh ta đang
có rắc rối chuyện các thành viên đến hay không đến Có ngày ai cũng muốn chơi golf nhưng số nhân viên câu lạc bộ lại không đủ phục vụ Có hôm, không hiểu vì lý do gì mà chẳng ai đến chơi, và câu lạc bộ lại thừa nhân viên
Mục tiêu của Khanh là tối ưu hóa số nhân viên phục vụ mỗi ngày bằng cách dựa theo thông tin dự báo thời tiết để đoán xem khi nào người ta sẽ đến chơi golf Để thực hiện
Trang 7điều đó, anh cần hiểu được tại sao khách hàng quyết định chơi và tìm hiểu xem có cách giải thích nào cho việc đó hay không.
Vậy là trong hai tuần, anh ta thu thập thông tin về:
Trời (outlook) (nắng (sunny), nhiều mây (clouded) hoặc mưa (raining)) Nhiệt độ (temperature) bằng độ F Độ ẩm (humidity) Có gió mạnh (windy) hay không.
Và tất nhiên là số người đến chơi golf vào hôm đó Khanh thu được một bộ dữ liệu gồm 14 dòng và 5 cột
Dữ liệu chơi GolfSau đó để giải quyết bài toán , Khanh đã tạo mô hình cây quyết định như sau:
Trang 8Cây quyết định là một mô hình dữ liệu mã hóa phân bố của nhãn lớp (cũng là y)
theo các thuộc tính dùng để dự đoán Đây là một đồ thị có hướng phi chu trình dưới dạng một cây Nút gốc (nút nằm trên đỉnh) đại diện cho toàn bộ dữ liệu Thuật toán cây phân
loại phát hiện ra rằng cách tốt nhất để giải thích biến phụ thuộc, play (chơi), là sử dụng
biến Outlook Phân loại theo các giá trị của biến Outlook, ta có ba nhóm khác nhau: Nhóm người chơi golf khi trời nắng, nhóm chơi khi trời nhiều mây, và nhóm chơi khi trời mưa
Kết luận thứ nhất: nếu trời nhiều mây, người ta luôn luôn chơi golf Và có một số người ham mê đến mức chơi golf cả khi trời mưa
Tiếp theo, ta lại chia nhóm trời nắng thành hai nhóm con Ta thấy rằng khách hàng không muốn chơi golf nếu độ ẩm lên quá 70%
Cuối cùng, ta chia nhóm trời mưa thành hai và thấy rằng khách hàng sẽ không chơi golf nếu trời nhiều gió
Và đây là lời giải ngắn gọn cho bài toán mô tả bởi cây phân loại Khanh cho phần lớn nhân viên nghỉ vào những ngày trời nắng và ẩm, hoặc những ngày mưa gió Vì hầu như
sẽ chẳng có ai chơi golf trong những ngày đó Vào những hôm khác, khi nhiều người sẽ đến chơi golf, anh ta có thể thuê thêm nhân viên thời vụ để phụ giúp công việc
Kết luận là cây quyết định giúp ta biến một biểu diễn dữ liệu phức tạp thành một cấu trúc đơn giản hơn rất nhiều
I.2.2 Các phương pháp phân lớp và hồi quy
Mục đích của phương pháp phân lớp là nhằm dự đoán những nhãn lớp cho các bộ
dữ liệu Phân lớp (classification) là quá trình nhóm một tập các đối tượng vật lý hoặc trừu
tượng thành các nhóm hay các đối tượng tương tự nhau Một lớp (class) là một tập các đối tượng dữ liệu trong đó các đối tượng trong cùng một lớp có sự tương tự hoặc khác nhau so với các đối tượng thuộc lớp khác
Việc phân lớp không bao giờ sử dụng độc lập mà nó thường được sử dụng kèm vớicác phương pháp khác Khi một cách phân lớp được đưa ra cũng phải có một phương pháp
áp dụng để đưa ra ý nghĩa của lớp đó
Ngày nay, có nhiều vấn đề nghiên cứu về phân lớp trong các lĩnh vực khác nhaunhư khai phá dữ liệu, thống kê, học máy, công nghệ dữ liệu không gian, sinh học Do kíchthước của các CSDL tăng lên rất nhanh, phân lớp đang là vấn đề được quan tâm trongnghiên cứu về khai phá dữ liệu
Trang 9Trong khai phá dữ liệu, các vấn đề nghiên cứu trong phân lớp chủ yếu tập trung vàotìm kiếm các phương pháp phân lớp hiệu quả và tin cậy trong CSDL lớn Các yêu cầu đặt
ra đối với các phương pháp phân lớp đó là độ hiệu quả (effectiveness) và độ tuyến tính(scalability) của thuật toán, khả năng làm việc với các kiểu dữ liệu và các lớp có hình dạngphức tạp, các kĩ thuật phân lớp nhiều chiều và các phương pháp phân lớp gồm dữ liệu số và
dữ liệu xác thực trong CSDL lớn
Có rất nhiều thuật toán phân lớp khác nhau, việc lựa chọn một thuật toán thích hợpphụ thuộc vào kiểu dữ liệu cần thực hiện cũng như là mục đích của ứng dụng Nếu phânlớp được xem như là công cụ mô tả hoặc thăm dò, khi đó phải thực hiện nhiều thuật toánphân lớp khác nhau trên cùng một phương pháp phù hợp nhất Nói chung các thuật toánphân lớp được chia thành các nhóm sau: phương pháp phân hoạch, phương pháp phân cấp,phương pháp dựa vào mật độ, phương pháp chia lưới, phương pháp dựa vào mô hình,(thường áp dụng cho CSDL không gian)
Khi khoa học công nghệ phát triển thì việc xử lý dữ liệu ngày càng được con người chú ý Và việc tìm kiếm tri thức từ trong dữ liệu đã được sử dụng rất rộng rãi Khai
khoáng dữ liệu là một quá trình trong tìm kiếm tri thức trong dữ liệu , vì thế nó cũng được ứng dụng rất nhiều trong nhiều bài toán , lĩnh vực cụ thể :
Thông tin thương mại : phân tích thị trường , phân tích đầu tư , bảo hiểm , chứng khoán ,…
Thông Tin sản xuất : điều khiển và lên kế hoạch sản xuất , quản trị mạng , hệ thống sản xuất , phân tích các kết quả thực nghiệm …
Thông tin khoa học : cơ sở dữ liệu sinh học , thiên văn học , cơ sở dữ liệu đất …
Và một số ngành khác : trong xử lý ảnh , phim …
Một số bài toán thực tế:
I.3.1 Công ty Etoys
Etoys là một ví dụ về khai khoáng mỏ dữ liệu trực tuyến www.etoys.com bán các
đồ chơi trực tuyến Trên web site này, khách tham quan có thể chọn ''toy search'' (tìm đồ chơi) Bằng cách sử dụng một pull down menu, khách tham quan có thể chọn các tiêu chí
Trang 10sau đó cung cấp cho khách hàng một danh sách các đồ chơi đáp ứng các tiêu chí này, tiết kiệm cho họ thời gian, và sự hối hả khi phải đến cửa hàng đồ chơi để mua quà cho con
Hình : site mô tả web bán hàng của Etoys
I.3.2 Tập đoàn Unilever
Tập đoàn Unilever chuyên cung cấp các mặt hang về thực phẩm tiêu dùng và nhiều sản phẩm dùng cho chăm sóc cá nhân và gia đình Sản phẩm của công ty đã được nhiều khách hàng trên thế giới ưa chuộng và công nhận Để làm được điều ấy , công ty đã thu nhập thông tin khách hàng , từ địa chỉ cá nhân , giới tính , độ tuổi , thói quen tiêu dùng , các sản phẩm hay dùng Sau đó Unilever sẽ chuyển về cho 1 công ty thứ 3 để làm việc phân tích , khám phá dữ liệu Từ đó đưa ra các định hướng phân tích kinh doanh
I.3.3 Bài toán của công ty Wireless
Công ty Verizon Wireless là một công ty chuyên về cung cấp các thiết bị dịch vụ không dây lớn ở Mỹ Dựa vào số liệu từ website công ty : http://www.verizonwireless.comthì năm 2007 công ty đạt số lượng 65 triệu khách hang Thu nhập hàng năm là 43.5 tỷ USD
Công ty khi so sánh dữ liệu thu nhập thì phát hiện ra tỷ lệ khách hang từ bỏ sản phẩm của công ty là 2% / tháng tức là hơn 1 300 000 khách hang / tháng Vì vậy khi tính toán chi phí thay thế là hàng trăm triệu USD / năm
Trang 11Để khắc phục tình trạng này , công ty có 1 hướng giải quyết bình thường nhất đó là :
ưu đãi , chào mời khuyến mãi cho tất cã các loại khách hang Nhưng chi phí cho việc này lại rất tốn kém và khả năng thành công chưa cao
Bằng việc điều tra , tìm hiểu các số liệu bán hang cũ Công ty đã đưa ra một giải pháp khác : xây dựng mô hình dự đoán các khách hàng sắp rời bỏ công ty Từ đó công ty
sẽ tung ra các sản phẩm , mặt hang khuyến mãi để giữ khách hang lại Tìm hiểu thong tin của khách hang loại này để tiếp tục tung ra các kế hoạch phát triển mới
Kết quả : công ty đã giảm được tỷ lệ khách hàng rời bỏ < 1.5% / tháng
I.3.4 Phân tích dữ liệu mua hàng tiêu dùng của khách hàng
Trong thời buổi kinh tế thị trường như hiện nay, mọi thứ đều trở nên rất đắt đỏ, mọi người đều phải tự điều chỉnh chi tiêu sao cho phù hợp với nhu cấu của mình Có lẽ như thế
mà người ta có xu hướng đi siêu thị nhiều hơn là đi chợ Vào đó, người ta có thể mua nhiềuthứ cùng lúc, không phải trả giá mà lại tiết kiệm được thời gian, chi phí vận chuyển, hay những chi phí tương tự thế…
Vì nó tiện lợi, nó hữu ích nên người ta thích nó.Họ có thể mua mặt hàng này, mặt hàng khác hay nhiều mặt hàng khác nữa Nhu cầu của mỗi người là khác nhau, vậy làm sao
mà một nhà quản lý có thể nắm bắt được nhu cầu đó của mỗi khách hàng, để có thể biết được là mình cần nhập về loại hàng gì và nhập với số lượng bao nhiêu? Đó là vấn đề đặt ra buộc doanh nghiệp phải giải quyết???
Dựa vào các luật trong Data Mining chúng ta có thể phân tích được nhu cầu đó của khách hàng Có thể nói là nếu như một khách hàng mua một hay nhiều mặt hàng thì kéo theo là họ sẽ mua những mặt hàng nào khác đi kèm Từ đó ta có thể thống kê được nhu cầumua hàng của khách và cũng chính là nhu cầu hàng mà ta nhập về
Điều này thật cần thiết cho mỗi doanh nghiệp, nếu muốn phát triển nhanh và thu hútđược khách hàng Họ phải nắm bắt được nhu cầu và thị hiếu của khách hàng và Data Mining là công cụ hỗ trợ trong vấn đề đó ,nó giúp tìm ra các luật và hỗ trợ xem là quyết định nhập hàng về của họ là có đúng không?
Trang 12Qua việc sử dụng các thuật giải trong Khai pha dữ liệu và bộ dữ liệu Walmart 1997 Nhóm tác giải đã đưa ra nhận định sau :
Nếu một khách hàng mua trái cây tươi nhiều thì họ sẽ mua phô mai nhiều
Nếu một khách hàng mua Soup nhiều thì họ sẽ mua phô mai rất nhiều
II.1.1 Lịch sử SQL SERVER
SQL SERVER phiên bản đầu tiên được ra đời vào năm 1989 , với phiên bản SQL SERVER 1.0 do sự hợp tác giữa Microsoft , Sybase, Ashon-Tate Sau đó được nâng cấp lên SQL SERVER 3.0 trên nền Unix Sau đó MS SQL SERVER 4.2 được công bố từ năm
1992 Tiếp theo đó , phiên bản 4.21 trên nền WINDOW NT 4.21 được phát hành cùng thờiđiểm với phiên bản NT 3.1 Phiên bản 6.0 là phiên bản được thiết kế cho NT và không phụthuộc vào Sybase
Vào thời gian NT đươc phát hành , MS và Sybase tách biệt theo hai con đường quảng cáo và tiếp thị cho từng sản phẩm của mình Microsoft dàn xếp độc quyền cho tất cảsản SQL SERVER phẩm của mình bằng việc viết trên hệ điều hành WINDOWS Sybase thì thay đổi tên sản phẩm của mình để tránh nhầm lẫn với MS
Trong suốt quá trình tách biệt , cũng có lúc vài phiên bản của MS không viết độc lậpvới Sybase Điển hình là phiên bản 7.0 được viết lại trên nền kế thừa của Sybase Phiên bản tiếp theo SQL SERVER 2000 là một sự thành công lớn khi được viết trên nền kiến trúcIA-64 , đây cũng là phiên bản đầu tiên có hỗ trợ phân tích dữ liệu
Trong tám năm kể từ khi phiên bản trước 2000 được phát hành , sự tiến bộ đã được hình thành Với phiên bản SQL SERVER 2005 , cac bộ công cụ IDE dành cho khách hàng, các hỗ trợ thêm vào đã được đóng gói trong phiên bản này Nó bao gồm các bộ : công
cụ ETL (SQL Server Integration Services hoặc SSIS), Reporting Server, OLAP và
Analysis Services), Service Broker và Notification Services
SQL Server 2008 là phiên bản thứ ba của SQL Server có hỗ trợ các công cụ kỹ thuậtkhai khoáng dũ liệu Từ khi xuất hiện lần đầu trong phiên bản 2000 , MS đã xây dựng công cụ Analysis Service để hỗ trợ người dùng trong việc phân tích dữ liệu
Trang 13Công dụng của SQL SERVER :
SQL SERVER là một hệ quản trị cơ sở dữ liệu được phát triển bởi Microsoft Nó sử dụng
Trang 14SQL SERVER còn hỗ trợ nhiều công nghệ trong việc phân tích và quản lý dữ liệu :
SQL SERVER ENGINE : bộ công cụ hõ trợ cơ chế quản lý dữ liệu của SQL
II.1.2 Điểm phát triển của SQL SERVER 2008
SQL SERVER 2008 là phiên bản hiện tại của dòng sản phẩm SQL SERVER SQL Server 2008 cũng bao gồm hỗ trợ cho các kiểu cấu trúc và bán cấu trúc dữ liệu, bao gồm các phương tiện truyền thông kỹ thuật số định dạng cho hình ảnh, âm thanh, video đa phương tiện và các dữ liệu Trong các phiên bản hiện tại, dữ liệu đa phương tiện như vậy
có thể được lưu trữ như BLOBs (đối tượng nhị phân lớn) SQL Server 2008 cũng hỗ trợ lưu trữ các kiểu dữ liệu XML, email, thời gian / lịch, tập tin, tài liệu, không gian, v v cũng như thực hiện tìm kiếm, truy vấn, phân tích, chia sẻ, và đồng bộ trên tất cả các kiểu dữ liệu
Chức năng Tìm kiếm Văn Bản Đầy Đủ ( Full-Text Search ) cũng được tích hợp với
hệ thống cơ sở dữ liệu , điều này giúp đơn giản hóa và cải thiện các hiệu suất Dữ liệu không gian cũng sẽ được lưu trữ ở 2 dạng : Kiểu dữ liệu GEOMETRY đại diện cho dữ liệu không gian địa lý được sử dụng từ các kiểu hình cầu, phối hợp hệ thống với một máy bay , và kiểu dữ liệu GEOGRAPHY dùng một hình elip để định nghĩa
Ngoài ra SQL SERVER 2008 còn nâng cấp bộ Business Intelligent Dev Studio , nhằm giúp người dùng trong việc ứng dụng các công cụ Khai khoáng dũ liệu BI là một IDE của Microsoft được phát triển cho việc phân tích , xử lý dữ liệu và giải pháp trí tuệ kinh doanh , được dùng trên nền SQL SERVER : Analysis Services, Reporting
Services và Integration Services Nó dựa trên môi trường phát triển MS Visual Studio , nhưng làm theo yêu cầu với SQL Server mở rộng và các loại dự án, các công cụ, điều khiển và các dự án cho các báo cáo, ETL , OLAP và các cấu trúc khai khoáng dữ liệu
Trang 15SQL SERVER 2008 với công cụ Khai khoáng dữ liệu có thể tích hợp với bộ
OFFICE 2007 trong môi trường Excel và Visio
Quy trình làm việc của Khai khoáng dữ liệu trong SQL SERVER 2008:
II.2 Các quy trình làm việc của Data Mining
Quá trình minh họa trong biểu đồ là hình tròn , các bước thực hiện không nhất thiết phải dẫn trực tiếp đến bước tiếp theo Do quá trình khai phá mô hình là một quá trình năngđộng và lặp lại nên chúng ta cần tìm nhiều dữ liệu hơn Ngoài ra trong quá trình làm việc , bạn sẽ gặp trường hợp dữ liệu hoặc mô hình này không xác định được vấn đề mà bạn đã đưa ra , do đó trong quá trình làm việc bạn phải xác định lại vấn đề nhiều lần hoặc cần thiếtthì cập nhật lại mô hình Mỗi bước trong tiến trình có thể cần phải được lặp đi lặp lại nhiềulần để tạo ra một mô hình dữ liệu tốt
SQL Server 2008 cung cấp một môi trường tích hợp để tạo và làm việc với các dữ
liệu khai các mô hình, được gọi là Business Intelligence Development Studio Điều này
bảo đảm môi trường bao gồm thuật toán khai khoáng dữ liệu và các công cụ mà làm cho nó
dễ dàng để xây dựng một giải pháp toàn diện cho một loạt các dự án Để biết thêm thông tin về cách sử dụng BI Studio Development, xem thêm Business Intelligence Development Studio
Trang 16Đây là bước đầu tiên trong khai phá dữ liệu , là bước tiền đề để bắt đầu việc khai phá Ví dụ : nêu bật sơ đồ , xác định các vấn đề trong kinh doanh , tìm hiểu các cách thức
để cung câp câu trả lời cho vấn đề này
Ở bước này chúng ta cần xác định , phân tích các vấn đề kinh doanh , phạm vi của vấn đề , xác định số liệu của các mô hình được đánh giá và xác định các mục tiêu cụ thể ,
rõ ràng cho các dự án khai khoáng dữ liệu Những nhiệm vụ này phụ thuộc vào các câu hỏi sau đây :
o Bạn đang làm gì ? Các mối quan hệ nào cần tìm thấy ?
o Có những vấn đề mà bạn đang cố gắng giải quyết có phản ánh và quy trình quản lý của doanh nghiệp
o Có thuộc tính dataset nào sẽ liên quan đến dự án
o Làm thế nào để phân phối được dữ liệu? Hiển thị một cách chính xác dữ liệu
Để trả lời các câu hỏi này , bạn cần phân tích và nghiên cứu dữ liệu có sẵn , điều tra doanh nghiệp Nếu dữ liệu không hỗ trợ đầy đủ cho dự án, có thể bạn phải định nghĩa lại
dự án Bạn cũng cần phải xem xét các cách thức mà các kết quả của các mô hình có thể được kết hợp trong chỉ số hiệu suất chủ chốt (KPI) được sử dụng để đo lường sự tiến bộ kinh doanh
Chuẩn bị dữ liệu bao gồm các bước :
o Làm sạch dữ liệu : Vì dữ liệu đưa vào chưa chắc đã hoàn thiện , mà có thể tồn tại các dữ liệu rác làm ảnh hưởng xấu đến quá trình khai phá và phân tích
Trang 17dữ liệu Quy trình này sẽ loại bỏ các nhiễu hoặc khử các dữ liệu không thích hợp.
o Tích hợp dữ liệu : Trong dữ liệu đưa về , có thể còn tồn tại những lỗi khi tích hợp với hệ thống , vì vậy ta cần tích hợp dữ liệu với hệ thống Qúa trình này
sẽ gom các kiểu dữ liệu lại thành một cấu trúc duy nhất để lưu trữ và xử lý
o Chọn dữ liệu : ở bước này, những dữ liệu liên quan trực tiếp đến nhiệm vụ sẽđược thu thập từ các nguồn dữ liệu ban đầu
o Chuyển đổi dữ liệu : trong bước này, dữ liệu sẽ được chuyển đổi về dạng phùhợp cho việc khai phá bằng cách thực hiện các thao tác nhóm hoặc tập hợp
Như vậy sau 4 quá trình trên , ta đã hoàn thiện quá trình chuẩn bị dữ liệu và sang bước 3
Bước 3 : Khảo sát dữ liệu
Nếu dữ liệu chấp nhận được thì chuyển qua bước 4 Nếu dữ liệu thì quay lại bước 1xem xét lại bài toán
Bước thứ tư là quy trình bắt đầu xây dựng một mô hình khai khoáng dữ liệu, như nêu bật trong các sơ đồ, là để xây dựng các mô hình hay khai khoáng các mô hình dữ liệu
đã xử lý Chúng ta sẽ dùng thuật toán , kiến thức mà bạn đã đạt được trong việc khai
khoáng dữ liệu bước để giúp xác định và tạo ra các mô hình
Bạn xác định các dữ liệu mà bạn muốn khai phha1 bằng cách tạo ra một cơ cấu khaikhoáng dữ liệu Cấu trúc Mining sẽ định nghĩa nguồn dữ liệu, nhưng không chứa bất kỳ dữliệu nào cho đến khi bạn xử lý nó Khi bạn tiến hành quá trình khai khoáng các cấu trúc, Analysis Services sẽ được tạo ra và dữ liệu này có thể được sử dụng cho việc phân tích Những dữ liệu này có thể được sử dụng bởi bất kỳ mô hình nào Để hiểu rõ hơn thông tin
về cách thức khai khoáng cấu trúc có liên quan đến việc khai khoáng các mô hình, bạn có
Trang 18Trước khi mô hình được phân tích xử lý, mô hình dữ liệu khai khoáng chỉ là một kho hàng
đã xác định các cột được sử dụng cho đầu vào, các thuộc tính mà bạn đang có dự đoán, và các tham số cho biết rằng các thuật toán như thế nào để xử lý dữ liệu Chế biến một mô
hình còn được gọi là huấn luyện (training) Training đề cập đến quá trình áp dụng một
thuật toán , giải thuật cụ thể cho dữ liệu trong cơ cấu để có thể trích xuất các mẫu Các mẫu
mà bạn tìm thấy trong quá trình huấn luyện phụ thuộc vào sự lựa chọn các dữ liệu training, các thuật toán mà bạn đã chọn, và làm thế nào để bạn có cấu hình các thuật toán SQL Server 2008 chứa rất nhiều các thuật toán khác nhau, mỗi thuật toán phù hợp với một loại công việc, và mỗi tạo ra một loại mô hình Để có một danh sách các thuật toán cung cấp trong SQL Server 2008, xem thêm về Data Mining Algorithms (Data Analysic
Quan trọng khi thay đổi dữ liệu là phải cập nhật tất cả các cấu trúc Mining và mẫu Mining Khi bạn cập nhật các cấu trúc mining và làm lại việc xử lý chúng , Analysis Services sẽ truy xuất dữ liệu từ nguồn , bao gồm cả hai loại dữ liệu cũ và mới Nếu dữ liệunguồn được cập nhật thì dữ liệu trong cấu trúc cũng sẽ được cập nhật Nếu bạn có được các mô hình dựa trên cấu trúc, bạn có thể chọn để cập nhật những mô hình được dựa trên các cơ cấu, điều này có nghĩa là chúng được retrained trên các dữ liệu mới, hoặc bạn có thể
để lại các mô hình như vậy Bạn có thể tìm hiểu thêm Processing Data Mining Object
Đây là bước thứ 5 trong quy trình, nó được biễu diễn trên sơ đồ Trước khi triển khai một mô hình thành một môi trường sản xuất, bạn sẽ muốn thử nghiệm các mô hình
Trang 19như thế nào thực hiện Ngoài ra, khi bạn xây dựng một mô hình, bạn thường tạo ra nhiều
mô hình với các cấu hình khác nhau và tất cả các mô hình thử nghiệm để xem có mang lại kết quả tốt nhất cho vấn đề của bạn và dữ liệu của bạn
Analysis Services cung cấp các công cụ giúp cho chung ta có thể tiếp cận và kiểm tra dữ liệu để bạn có thể đánh giá chính xác hiệu suất của tất cả các mô hình trên cùng một dữ liệu Bạn sử dụng công cụ Training dataset để xây dựng các mô hình, và kiểm tra dataset
để kiểm tra tính chính xác của các mô hình dự đoán bằng cách tạo ra các truy vấn Trong SQL Server 2008 và Analysis Services, phân vùng này có thể được thực hiện tự động, trong khi xây dựng các mô hình khai khoáng Để biết thêm thông tin, xem thêm Validating Data Mining Models (Analysis Services - Data Mining)
Bạn có thể khám phá những xu hướng và các mẫu khám phá rằng các thuật toán bằng cách sử dụng xem dữ liệu trong Khai khoáng trong thiết kế phát triển BI Studio Để biết thêm thông tin, xem xem một mô hình dữ liệu Khai khoáng Bạn cũng có thể thử nghiệm như thế nào tạo ra các mô hình dự báo của các công cụ bằng cách sử dụng trong các thiết kế như thang máy và các biểu đồ phân loại ma trận Để xác minh xem là mô hình
cụ thể cho dữ liệu của bạn, hoặc có thể được sử dụng để làm cho inferences trên dân số nói chung, bạn có thể sử dụng các kỹ thuật thống kê gọi là cross-xác nhận để tự động tạo ra subsets các dữ liệu và thử nghiệm các mô hình đối với mỗi nhóm Để biết thêm thông tin, xem Validating Data Mining Models (Analysis Services - Data Mining)
Bước cuối cùng trong quá trình khai các dữ liệu, như được nêu bật trong các
sơ đồ, là để triển khai các mô hình có hiệu suất tốt nhất cho một môi trường sản xuất
Sau khi khai các mô hình sản xuất tồn tại trong một môi trường, bạn có thể thực hiện nhiều nhiệm vụ, tùy thuộc vào nhu cầu của bạn Sau đây là một số trong những công việc bạn có thể thực hiện:
o Xây dựng các mô hình dự báo Bạn có thể sử dụng các ngôn ngữ truy vấn đểthực hiện vấn đề này Bạn có thể dùng Query Builder để tạo các câu truy vấn.Tạo các truy vấn nội dung, để lấy các số liệu thống kê, quy tắc, hoặc các
Trang 20o Nhúng dữ liệu khai khoáng trực tiếp vào một ứng dụng Có thể sử dụng AMO , XML để thực thi các việc này
o Sử dụng Integration Services để tạo một phần mềm trong đó mô hình khai khoáng dữ liệu được sử dụng để tích hợp vào nhiều bảng
III.1 Thuộc tính:
Phần cơ bản nhất của vấn đề Data mining là thuộc tính (attribute), một mẫu thông tin đơn về một ví dụ Các ví dụ này bao gồm tuổi, giới tính và tình trạng hôn nhân của khách hàng; thể loại, khối lượng hoặc màu sắc của sản phẩm; hoặc mã bưu điện, thu nhập hàng năm Các thuộc tính có thể làm người dùng mua một sản phẩm cụ thể hay thậm chí là
số lượng sản phẩm mà khách hàng muốn mua
Khi chọn các thuộc tính cho data mining, bạn nên lựa chọn một cách cẩn thận các thuộc tính liên quan đến vấn đề cần giải quyết và cung cấp thông tin có thể được sử dụng trong thuật toán Data mining Có rất nhiều thuộc tính không phù hợp để khai khoáng dữ liệu, hay ít nhất là về mặt hình thức chúng không tồn tại trong dữ liệu Ví dụ, địa chỉ của một khách hàng là một thuộc tính, nhưng nó không tương ứng với các thuộc tính khác nếu chưa được biến đổi Có thể biến đổi bằng cách sử dụng các công cụ “không gian địa lý” (geospatial) để xác định khoảng cách tới một mốc nào đó
Ta có thể thu được các thuộc tính không đếm được từ các thuộc tính đang có trong
dữ liệu Các thuộc tính như giá giao dịch cực đại mà người mua đã từng mua, thời gian mộtsản phẩm tồn tại trên thị trường, hoặc tỷ lệ giữa kích thước lưu trữ với số lượng khách hàngtrong một ngày,…có thể hữu ích cho mô hình khai khoáng dữ liệu của bạn Việc suy nghĩ một cách sáng tạo về các khía cạnh của vấn đề và dữ liệu đang có thể cung cấp cho bạn một lượng thông tin phong phú để khai khoáng
Có hai loại thuộc tính Thuộc tính thể loại (hoặc rời rạc) có một tập hợp số của giá trị (chẳng hạn giới tính nam, nữ; Mã bưu chính) Thuộc tính liên tục được định nghĩa là trị
số Chúng có thể được điều khiển bởi các toán tử toán học chuẩn và sử dụng một số loại
Trang 21phân phối (chẳng hạn phân phối Gauss) Các loại thuộc tính thêm là dựa trên thuộc tính rời rạc hoặc liên tục chính Ví dụ, loại thuộc tính có thứ tự hoặc tuần hoàn là rời rạc nhưng có thứ tự (ví dụ như kích cỡ của áo sơ mi) Các thuộc tính được rời rạc hóa là các trường hợp đặc biệt của loại rời rạc Trong trường hợp này, một thuộc tính liên tục được chia ra thành các miền rời rạc để phân tích.
Khi chọn các thuộc tính để sử dụng trong kết quả Data mining, hãy nhớ rằng nếu bạn có càng nhiều thuộc tính thì càng có nhiều mẫu cần được suy ra từ các thuộc tính đó Nếu bạn chỉ có các thuộc tính giới tính, tình trạng hôn nhân và sở hữu nhà, bạn có thể biểu diễn tất cả các biến đổi có thể trong một tập dữ liệu rất nhỏ Tuy nhiên, khi bạn thêm các thuộc tính, số kết nối sẽ tăng lên, cần có nhiều dữ liệu để tìm ra các mẫu dữ liệu tốt Khai khoáng dữ liệu sẽ thực hiện những việc đó
III.2 Trạng thái
Tương ứng với từng thuộc tính rời rạc là các giá trị và trạng thái của nó Thuộc tính tình trạng hôn nhân có thể có các trạng thái là đã kết hôn hoặc độc thân Cũng có thể có cácthuộc tính thêm vào, chẳng hạn tình trạng “đã li dị”, “đã chia tay”, “góa” hoặc các liên hệ khác Chẳng hạn đối với các thuộc tính, điều quan trọng là phải giới hạn được tình trạng của thuộc tính có liên quan
Thuật toán Data mining sẽ xem xét từng trạng thái theo nhiều hướng như nhau và sẽkhông hiểu bất kỳ quan hệ kéo theo nào giữa chúng Ví dụ, một thuật toán sẽ không hiểu khách hàng nào “đã li dị”, khách hàng nào “góa” nếu thực tế là “độc thân” Tương tự, nó cũng sẽ không hiểu tình trạng “đã chia tay” thì vẫn có tình trạng “đã kết hôn”
Ta giữ lại các khái niệm quan trọng, và đơn giản hóa các khái niệm không quan trọng trên phạm vi lớn nhất có thể Ví dụ, nếu bạn đang tiến hành khai khoáng dữ liệu cho một vấn đề kinh tế với các khách hàng trên toàn nước Mỹ, nhưng tập trung vào một số vùng, bạn có thể muốn giới hạn giá trị của thuộc tính “Mã bưu điện” Sau đó, bạn có thể sửdụng một giá trị khác thay thế cho “Mã bưu điện” Hầu hết các thuật toán có nhiều tham số
để giới hạn các trạng thái cho mọi thuộc tính cụ thể
Trang 22Trong SQL Server Data Mining, tất cả các thuộc tính đều được hiểu ngầm là ở trạngthái “Missing” Trạng thái này cho biết thuộc tính không thể xuất hiện trong bất kỳ dòng
dữ liệu nào Tương tự như vậy, có thể có thuộc tính với trạng thái là “Existing”, điều đó có nghĩa rằng sự hiện diện của thuộc tính chỉ là thông tin có sẵn, chẳng hạn như sự tồn tại của một sản phẩm trong một giỏ hàng mua sắm Trạng thái “Missing” cũng thường xuyên được
sử dụng khi giai đoạn dự đoán gặp phải một giá trị chưa được nhận ra Ví dụ, nếu các thuật toán nhận được yêu cầu
dự báo thông tin về một ai đó với tình trạng hôn nhân là “Chưa bao giờ kết hôn” và
chỉ có nhìn thấy các trạng thái được mô tả trước đó, SQL Server sẽ tự động
thay thế giá trị đó với trạng thái “Missing”
Ngoài ra, mặc dù các thuộc tính liên tục không có trạng thái, mà chỉ có các giá trị liên tục, chúng vẫn đang được coi một cách tiềm ẩn trạng thái “Missing” Điều này cho phép các thuật toán hoạt động được trên dữ liệu có chứa một số giá trị NULL
III.3 Case
“Case” là khái niệm quan trọng nhất để hiểu được DMX (Data Mining Extensions
to SQL) Nếu bạn hiểu rõ Case, bạn sẽ hiểu được vấn đề mà bạn đang yêu cầu Nếu bạn không hiểu được Case của bạn, bạn sẽ không bao giờ có được kết quả mong đợi hoặc dự đoán trước
Một Case DMX là một ví dụ đơn lẻ mà bạn cung cấp cho thuật toán khai khoáng dữ liệu Nó bao gồm một bộ các thuộc tính với các giá trị tương ứng Mặc dù điều này nghe có
vẻ đơn giản, nhưng việc hiểu nhầm Case lại là nguyên nhân phổ biến nhất dẫn đến sự thất bại trong việc thực hiện khai khoáng dữ liệu
Một Case đại diện cho thực thể mà bạn đang khai khoáng – là điều bạn đang cần hỏi Trong tình huống đơn giản nhất (và trong thực tế, hầu hết các tình huống), một
Case được đại diện bởi một hàng trong bảng, các cột trong bảng đại diện cho các
thuộc tính Trong thực tế, đại đa số các vấn đề khai khoáng dữ liệu đều có dạng thức này nếu không có lý do nào khác ngoài khả năng của các công cụ khai khoáng dữ liệu trước đó hạn chế người dùng đặt ra câu hỏi theo dạng thức đó Ví dụ, nếu câu hỏi của bạn đề cập
Trang 23đến các yếu tố của một khách hàng có tác động rủi ro tín dụng, các Case sẽ chính là các khách hàng và sẽ chứa tất cả các thông tin mà bạn biết hoặc nhập vào về khách hàng đó.
Ngay cả trong các tình huống đơn giản, ta cũng rất dễ hiểu sai vấn đề các Case nên được đại diện như thế nào để đặt một câu hỏi Ví dụ, bạn muốn hiểu những yếu tố ảnh hưởng đến tỷ lệ tội phạm trong thành phố Đối với trường hợp này, Case có thể là thành phố bởi vì bạn đang quan tâm đến các thuộc tính về thành phố có tác động đến tội phạm Tuy nhiên, hãy xem xét một tình huống khi mà bạn muốn kiểm tra xem chính thành phố đóchiếm tỷ lệ tội phạm ra sao so với tổng thể Trong trường hợp này, thành phố sẽ
là một thuộc tính bởi vì nó sẽ trở thành một trong những biến độc lập sẽ được sử dụng trong phân tích Một Case trong bài này sẽ là một phép đo trong đó có chứa tên thành phố,
tỷ lệ tội phạm, và các thuộc tính khác
Chú ý: Một cách để xác định một Case là suy nghĩ về những gì là nặc danh về phân
tích của bạn Nếu bạn đang phân tích các yếu tố về khách hàng, thì khách hàng có khả năng
là Case vì các khách hàng cá nhân không quan trọng trong kết quả, chỉ có vấn đề là làm thếnào để so sánh các thuộc tính của khách hàng đó với các thuộc tính của khách hàng khác
Một kịch bản phức tạp liên quan đến một tình huống mà bạn muốn phân tích về mốiquan hệ giữa các thuộc tính có thể có hoặc không có thể tồn tại trong một Case, và số lượng các thuộc tính trong một Case không được biết trước thời hạn Một ví dụ cho vấn đề này là phân tích giỏ thị trường, trong đó bạn sẽ khám phá các sản phẩm được buôn bán và
dự đoán việc bán được các sản phẩm nào Tại đây bạn có một bảng giao dịch với một cột cho ID giao dịch, một cột đại diện cho chỉ mục sản phẩm, và có khả năng các cột khác là
số lượng, số lượng bán ( như thể hiện trong Bảng 3-1) Trong trường hợp này, các hàng củabảng không đại diện cho các trường hợp và các cột không đại diện cho các thuộc tính
Trang 24Trong một bảng giao dịch, tất cả các hàng thuộc cùng một giao dịch (xác định bởi
ID giao dịch) bao gồm các Case Các thuộc tính được xác định bởi các mục lãi suất trong một hàng giao dịch Trong ví dụ hiển thị trong bảng 3-1, các giá trị của cột sản phẩm
“Product” tạo ra các thuộc tính có thể có trong Case Các thuộc tính có thể được mô tả từ
bảng này bao gồm số lượng của sữa, sữa đã được bán, số lượng của bánh mì, bánh mì đã được vào bán, Một loại thuộc tính đặc biệt cũng có thể được dùng chỉ đơn giản là để mô
tả sự tồn tại của các thuộc tính, chẳng hạn như “sữa xuất hiện trong Case này” (“Milk appeared in this case”) hoặc “bánh mì xuất hiện trong Case này” (“Bread appeared in this case”) Khi một giao dịch hoặc bảng giống như giao dịch xuất hiện trong một Case, nó được gọi là một bảng lồng nhau (gọi là Nested Table) Tương tự như vậy, bất kỳ trường hợp nào có chứa một bảng lồng nhau (Nested Table) thường được gọi như là một Case lồng nhau (Nested case).
DMX cho phép các Case phức tạp tùy ý Một Case có thể chứa các thuộc tính đại
diện bởi các cột trong một hàng (gọi là thuộc tính Case-level) và nhiều bảng giao dịch (hoặc bảng lồng “nested table”) có chứa các thuộc tính lồng nhau Hình 3-2 cho thấy một tập hợp các case với cả thuộc tính Case-level và thuộc tính lồng nhau (Nested) Sự linh
hoạt này trong mô hình cung cấp khả năng không cần điều kiện ràng buộc giữa tất cả các thuộc tính liên quan trong phân tích của bạn, trong khi hầu hết các cơ chế thương mại và phi thương mại được giới hạn độ phức tạp bởi các ràng buộc bên ngoài (chẳng hạn như số lượng các cột cho phép trong một bảng cơ sở dữ liệu)
III.4 Khoá (Key)
Trang 25DMX xem hai loại cột khác nhau là khóa (Key) Các cột này có rất nhiều nội dung
và ý nghĩa khác nhau Đầu tiên là khóa chính (Case Key) giúp xác định các thực thể đại diện bởi Case Trong nhiều triển khai, các khóa chính của một bảng dữ liệu nguồn có thể được sử dụng như một khóa Case Thông thường, nếu không có các bảng lồng nhau, một khoá Case có thể đơn giản chỉ là chỉ số hàng hoặc bất kỳ nhãn tùy ý khác.
Một loại khóa khác là khóa Nested Trong khi khóa Case đại diện cho phần nặc danh của Case, thì khóa Nested cho biết thực thể được đặt tên của hàng Nested Ví dụ, trong hình 3-3, khóa của bảng Nested (bảng có tên là Purchases) là tên sản phẩm, cho biết cột “Số lượng” (“Quantity”) và cột “OnSale” chỉ đến mục có tên trong cột đó Vì thế, bạn
có thể lấy được các thuộc tính Quantity of milk và Milk was OnSale Số lượng các thuộc tính của sữa Sữa là OnSale Nếu bạn sử dụng nhầm lẫn cột Quantity làm khóa Nested, các thuộc tính của bạn sẽ là vô nghĩa, chẳng hạn như sữa của 2 (Milk of 2) và OnSale of 2.
Hình 3-3
Chú ý:
Trang 26Một sai lầm phổ biến là sử dụng một khóa ngoại làm khóa Nested Điều này xảy ra chủ yếu là do các quy ước đặt tên – nhiều người tin rằng bởi vì nó được gọi là một khoá nên có ý nghĩa quan trọng trong quan hệ Tuy nhiên, khóa Nested chỉ là một khóa trong trường hợp bảng Nested là cho một thực thể đơn Khóa ngoại liên quan thường là giá trị tương tự như khóa Case Do vậy, đối với trường hợp trước đây được hiển thị trong hình 3-
2, việc sử dụng khóa ngoại như khóa Nested Trong trường hợp này, cột CustID của bảng
Purchases, sẽ cho kết quả là các thuộc tính như “Sữa của 1'' (‘‘Milk of 1’’),''Số lượng của 1” (“Quantity of 1”), và “Số lượng đã bán của 1” (“OnSale of 1”) Ngoài ra, bởi vì khóa
ngoại là như nhau cho tất cả các hàng trong giao dịch, kết quả là khóa trùng lặp trong bảng
Nested Mặc dù điều này sẽ không gây ra lỗi với SQL Server Data Mining, nhưng các hành
vi là chưa được xác định Hình 3-3 cho thấy lược đồ quan hệ cho các Case được mô tả
trong hình 3-2
III.5 Input Và Output
Một thuộc tính trong DMX có thể là một đầu vào, đầu ra một hoặc cả hai Trên giao diện, khái niệm này xuất hiện đơn giản, nhưng trên thực tế, nó rất dễ nhầm lẫn Nói chung, các thuật toán khai khoáng dữ liệu sử dụng dữ liệu đầu vào để tìm kết quả đầu ra Tuy nhiên, mỗi thuật toán đều có cách giải thích riêng, mỗi thuật toán sẽ được giải thích trong các chương sau trong cuốn sách này DMX là có liên quan, đầu vào và đầu ra đều được cung cấp cho thuật toán trong suốt quá trình đào tạo Tại thời điểm dự đoán, các yếu tố đầuvào được cung cấp cho thuật toán, và trả về kết quả đầu ra
Trong trường hợp có thuộc tính vừa là đầu vào lẫn đầu ra, theo quy ước chấp nhận bởi các thuật toán của Microsoft, thuộc tính đầu ra không bao giờ được sử dụng để dự đoánchính nó Vì vậy, các thuật toán thực hiện các bước để đảm bảo tách đúng thông tin Điều này phụ thuộc vào thuật toán, nhưng nó có thể liên quan đến số lượng Network được tạo ratrong một mạng Nơron, các cụm được tính toán như thế nào, Khả năng có nhiều kết quả đầu ra trong một mô hình đơn là một đổi mới trong DMX cho phép việc tạo ra nhiều tình huống phức tạp và thú vị hơn nữa
Việc lựa chọn và định nghĩa của các đầu vào và đầu ra phù hợp rất quan trọng để có một giải pháp khai khoáng dữ liệu thành công
Trang 27III.6 Các đối tượng trong DMX
III.6.1 Mining Structure
Cấu trúc khai khoáng mô tả các vấn đề Nó biểu diễn các cột của dữ liệu sẵn có cho vấn đề khai khoáng dữ liệu của bạn cũng như thông tin về các cột đó, và nó có thể chứa một bộ nhớ cache của các dữ liệu nguồn được sử dụng cho việc huấn luyện và thử nghiệm các mô hình của bạn Tùy thuộc vào cách mà cấu trúc được tạo ra, nó cũng có thể “mù” đốinguồn dữ liệu của bạn để cấu trúc có thể được xử lý lại mà bạn không cần phải cung cấp các thông tin dữ liệu nguồn lại lần nữa Ngoài ra, một cấu trúc khai khoáng có chứa tất cả các mô hình được sử dụng để phân tích các dữ liệu nguồn của cấu trúc
Một cấu trúc khai khoáng được định nghĩa là một danh sách các cột, với các loại dữ liệu của chúng và thông tin mô tả cách thức chúng được xử lý, cho biết chúng là rời rạc hayliên tục Các cột trong một cấu trúc khai khoáng không đại diện cho các thuộc tính; chúng chỉ đơn giản là các cột của dữ liệu sẽ có sẵn khi bạn tạo ra các mô hình
Thông thường, cấu trúc khai khoáng dữ liệu có chứa nhiều cột hơn sẽ được sử dụng trong bất kỳ mô hình nào Ví dụ, bạn có thể tạo ra nhiều mô hình khác nhau với các thuật toán khác nhau để giải quyết một vấn đề khai khoáng dữ liệu cụ thể Bởi vì các thuật toán
có các những khả năng khác nhau và dữ liệu yêu cầu khác nhau Ví dụ, thuật toán hồi quy tuyến tính (Microsoft Linear Regression) chỉ chấp nhận dữ liệu liên tục, trong khi các thuậttoán Bayes (Microsoft Naive Bayes) lại chỉ chấp nhận dữ liệu rời rạc Trong trường hợp bạn cần cả hai thuật toán để khai khoáng cùng một nguồn dữ liệu và dữ liệu không tương thích với một trong các thuật toán đó thì bạn phải thêm vào các cột cả trường hợp liên tục
và rời rạc trong cấu trúc Trường hợp cột rời rạc sẽ được chia thành các bucket rời rạc Mỗicột này sẽ bị ràng buộc vào cùng một cột trong suốt quá trình xử lý
Tương tự như vậy, bởi vì một cấu trúc khai khoáng chứa siêu tập hợp các cột mà các
mô hình có thể sử dụng để tạo ra các thuộc tính, nó cũng chứa siêu tập hợp các dòng mà
mô hình có thể sử dụng để tạo ra các Case Một cấu trúc khai khoáng dữ liệu có thể được
xây dựng để tự động phân chia dữ liệu của bạn thành tập huấn luyện và tập thử nghiệm, và chỉ có tập huấn luyện mới được thiết lập sẵn cho các thuật toán khai khoáng dữ liệu máy
Trang 28Khi một cấu trúc khai khoáng được xử lý, nó chứa một bộ nhớ cache được nén,
hoặc
sao chép của các dữ liệu nguồn Bộ nhớ cache này được sử dụng để huấn luyện bất kỳ mô
hình nào được được bổ sung sau đó vào cơ cấu Bộ nhớ cache có thể được tìm kiếm để trả
về dữ liệu hoặc các trạng thái khác biệt tồn tại trong các cột của cấu trúc Bộ nhớ cache chỉ được duy trì như là một tiện ích, và có thể được giảm xuống bất kỳ lúc nào Tuy nhiên, nếucác mô hình được bổ sung hoặc thay đổi, bạn sẽ phải tiền xử lý cấu trúc để ổn định các mô hình
III.6.2 Mô hình khai khoáng (mining model)
Trong khi một cấu trúc khai khoáng dữ liệu là một “container” và mô tả, thì mô hìnhkhai khoáng lại là đối tượng biến đổi các dòng dữ liệu thành các Case và thực hiện máy học cách sử dụng một thuật toán khai khoáng dữ liệu cụ thể Một mô hình khai khoáng được mô tả như là một tập hợp con của các cột từ cấu trúc, cách các cột được sử dụng như
là thuộc tính (có nghĩa là cho dù chúng là đầu vào, đầu ra hay cả hai), thuật toán và các thông số thuật toán sẽ được sử dụng để thực hiện học máy trên cấu trúc dữ liệu Hơn nữa, một mô hình khai khoáng dữ liệu được mô tả chỉ để khai khoáng một tập hợp các dữ liệu trong cấu trúc Cấu trúc dữ liệu có thể được lọc (dựa trên các cột cấu trúc) để khai khoáng
dữ liệu thích hợp cho một vấn đề cụ thể
Ví dụ, nếu bạn nhận thấy rằng các khách hàng ở bang Washington và các khách hàng ở nhiều nơi khác nhau một cách đáng kể, bạn có thể tạo ra một mô hình với một bộ lọc để loại trừ các khách hàng khác mà không cần phải tạo ra cấu trúc khác Cũng có thể để
lọc các nội dung của một bảng Nested từ cấu trúc để tinh chỉnh các câu hỏi của bạn Ví dụ,
bạn chỉ có thể biết các sản phẩm của một thể loại cụ thể, hoặc chỉ là giao dịch trong một gian đoạn cụ thể
Khi một mô hình khai khoáng dữ liệu được xử lý (hoặc huấn luyện), nó có chứa các mẫu mà thuật toán nhận được từ dữ liệu Một mô hình có thể được sử dụng cho dữ liệu mới
để dự đoán bất kỳ cột đầu ra cụ thể nào trong suốt quá trình tạo ra nó Thống kê về dự đoán
có sẵn cũng như xác suất của các dự đoán ước tính và các thống kê khác có sẵn của thuật toán Ngoài ra, chính các mẫu học có thể được truy vấn để tìm ra được thuật toán Những
Trang 29mô hình này thường được gọi là mô hình nội dung Nhiều thuật toán có thể cung cấp thông tin về mô hình cụ thể đã được sử dụng cho một dự báo cụ thể, do đó bạn có thể dự đoán kếtquả tương ứng một cách trực tiếp đến nội dung.
Dự đoán trong DMX được xác định khá lỏng lẻo Nói chung, Prediction nghĩa là áp
dụng các mô hình được tìm thấy trong dữ liệu để ước tính thông tin chưa biết Các ví dụ về
Prediction có thể dự đoán một khách hàng sẽ hoặc sẽ không vay tiền, ước tính điểm tín
dụng, xác định cụm nào thuộc có chứa Case, xác định khả năng các khách hàng huỷ dịch
vụ, tạo ra một danh sách các sản phẩm được khuyên dùng, hoặc dự đoán hàng hóa bán trong tương lai của một chuỗi thời gian
Các thông tin thực sự mà được dự đoán bởi một thuật toán khai khoáng dữ liệu phụ thuộc vào khả năng của thuật toán đó và cách mà mô hình của bạn được xác định Các quá trình dự đoán thường là mục tiêu cuối cùng trong bất kỳ kịch bản khai khoáng dữ liệu nào, cung cấp lợi ích cuối cùng của dữ liệu thu thập và học máy, và có thể
thay đổi cách thức kinh doanh được thực hiện Ví dụ, một trường hợp nghiên cứu trong đó giải pháp SQL Server Data Mining đã được triển khai để sản xuất các sản phẩm được đề nghị, kết quả là 100% , tăng doanh số bán hàng so với các đề nghị trước đó
DMX đơn giản hoá tất cả những khả năng bằng cách sử dụng một ẩn dụ phù hợp cho dự đoán Dự đoán DMX có thể được thực hiện trong nhiều tình huống khác nhau Tất nhiên, giống như các hệ thống khai khoáng dữ liệu truyền thống, dự đoán có thể được thực hiện trong một chế độ hỗn hợp với kết quả dự đoán được lưu trữ trong cơ sở dữ liệu quan
hệ hay một số điểm đích khác Tuy nhiên, do việc dự đoán hiệu quả, nó cũng có thể được thực hiện trong thời gian thực, kịch bản tương tác
Ví dụ, các nhà quảng cáo trực tuyến có thể sử dụng thông tin khách hàng và trình duyệt web hiện tại nhằm dự đoán quảng cáo hiệu quả nhất để hiển thị lên khi người dùng nhấp chuột qua một trang web Thí nghiệm thực hiện bởi nhóm khai khoáng dữ liệu SQL Server
và thể hiện được khả năng thực hiện hơn một tỷ dự đoán mỗi ngày (thời gian thực) bằng cách sử dụng các mô hình rất phức tạp xử lý hàng trăm ngàn thuộc tính DMX đóng gói
Trang 30toàn bộ dự đoán ẩn dụ sử dụng cùng một cấu trúc, bất kể loại hình dự đoán bạn yêu cầu, với các thay đổi không đáng kể cần thiết cho các kịch bản cụ thể.
Chương này sẽ giới thiệu bộ công cụ Analysis Services và cung cấp các kỹ thuật để tạo và phân tích một cách hiệu quả các mô hình mining
Chương này được thiết kế để giúp những người dùng mới bắt đầu tìm hiểu cũng nhưnhững người dùng chuyên môn có thể sử dụng được bằng cách mô tả và áp dụng các công
cụ phổ biến với Analysis Service cho mục đích data mining
Chương này mô tả các đặc trưng của Analysis Service thông qua các giao diện và cung cấp các hướng dẫn từng bước tạo ra tập hợp các mô hình mining cho từng mục đích khác nhau Chúng tôi sử dụng dữ liệu MovieClick để minh họa cho cách sử dụng bộ công
cụ này Dữ liệu này được giới thiệu ở phụ lục A
Cấu trúc của chương 4 như sau:
Cách sử dụng công cụ Business Intelligence Development Studio (BI Dev Studio)
Cách tạo và thay đổi data source, data source view và các đối tượng data mining
Cách khám phá dữ liệu và đánh giá mô hình
IV.1 Giới thiệu về Business Intelligence Development Studio
Microsoft Business Intelligence (BI) được tích hợp với Microsoft Visual Studio (VS) và được thiết kế xây dựng dựa trên cơ sở dữ liệu có khả năng mở rộng cho việc sắp xếp , phân tích, báo cáo dữ liệu và cung cấp các công cụ trực giác và mạnh mẽ để người dùng có thể sử dụng truy cập và phân tích các thông tin doanh nghiệp Hạt nhân cuối cùng trong Microsoft BI là Microsoft SQL Server 2008, một nền tảng dịch vụ dữ liệu hoàn tất cho phép bạn có thể:
Hợp nhất việc lưu trữ và truy cập tất cả dữ liệu trong doanh nghiệp
Trang 31 Xây dựng và quản lý các giải pháp BI phức tạp
Tăng phạm vi của giải pháp thâu tóm doanh nghiệp của bạn đến tất cả các nhân viên
Một đồ án data mining trong tập hợp nhiều đồ án chính là một giải pháp Ứng dụng của bạn có thể cần sử dụng nhiều project khác nhau kết hợp lại tạo thành giải pháp cố kết
Ví dụ: Một người quản trị cơ sở dữ liệu (DBA) có thể tạo ra một project Integration
Service để đưa dữ liệu ra khỏi hệ thống xử lý giao tác trực tuyến (OLTP) và biến đổi nó thành một dạng phù hợp cho nhiệm vụ Data mining Một người phân tích có thể tạo ra một project Analysis Service chứa các mô hình khám phá và kiểm tra dữ liệu Cuối cùng, một chuyên viên thiết kế có thể tạo một dịch vụ web và một website có nhúng các mô hình này
để tạo ra một ứng dụng cuối cùng hay một dịch vụ có thể bán được
Đây là môi trường được sử dụng chính trong SQL Server Data mining
IV.1.1 Cách sử dụng thông qua giao diện
Business Intelligence Development Studio được thiết kế chủ yếu cho chuyên viên thiết kế với một phương pháp không có cấu trúc cho giải pháp thực hiện – đây là điểm khácbiệt với các công cụ data mining truyền thống
Trước hết ta cần biết giao diện và cách sử dụng các thành phần trong BI Dev Studio.Hình 1 biểu diễn cách cửa sổ sắp xếp của BI Dev Studio
Trang 32Output Window Designer Window Properties Window
Hình 1 : BI Dev Studio.
Sau đây là những thành phần quan trọng nhất của BI Dev Studio
Solution Explorer: Đây là nơi bạn quản lý kết quả và các project của bạn Tất cả
các project được tạo ra và quản lý ở đây Để thêm đối tượng vào project, bạn right-click vào tên project và chọn Add New Item Hoặc bạn có thể right-click một folder cụ thể (tùy thuộc đối tượng bạn muốn tạo mới) và chọn New, khi đó một hộp thoại sẽ xuất hiện cho phép bạn tạo đối tượng mới
Window tabs: Các tab này cho phép bạn chuyển đổi nhanh chóng giữa các cửa sổ
thiết kế Một tab sẽ được biểu diễn cho từng đối tượng hoặc file đang mở hiện tại
Designer window: đây là nơi bạn có thể hiệu chỉnh và phân tích đối tượng Khi tạo
ra một đối tượng mới hoặc double-click vào một đối tượng trong Solution Explorer thì
Trang 33trình thiết kế đặc biệt của đối tượng đó sẽ được mở ra cho phép bạn thay đổi và tương tác với đối tượng.
Designer tabs: Nhiều đối tượng sẽ có nhiều khía cạnh khác nhau để bạn có thể hiệu
chỉnh và tương tác Những khía cạnh này được biểu thị bởi các tab bên trong cửa sổ
Designer
Properties window : đây là cửa sổ theo ngữ cảnh biểu diễn các thuộc tính của các
mục chọn hiện tại, đây là một khái niệm phổ biến trong VS và ứng dụng cho mọi loại thao tác thực hiện của đối tượng đó Ví dụ khi chọn một đối tượng trong Solution Explorer thì các thuộc tính của đối tượng đó (ví dụ ID, tên file,…) sẽ được xuất hiện Khi lựa chọn một cột trong cửa sổ Data mining Designer thì thuộc tính của cột này (chẳng hạn tên hoặc loại
dữ liệu) sẽ xuất hiện Khi một mục không có thuộc tính được chọn thì cửa sổ Properties sẽ rỗng
BI menus : Phần này nằm ở giữa menu Debug và menu Tools, bạn có thể tìm menu
theo ngữ cảnh cụ thể đến các đối tượng cần phân tích Ví dụ khi mở Data source view (DSV) thì menu format và data source view (DSV) sẽ xuất hiện
Output window : cửa sổ này biểu diễn các kết quả khi bạn xây dựng và triển khai
project Nếu có lỗi trong project của bạn, bạn sẽ thấy các mô tả cụ thể
IV.1.2 Chế độ Offline và chế độ Immediate
BI Dev Studio làm việc trong hai chế độ Chế độ bạ sử dụng đôi khi cũng phụ thuộcvào sở thích cá nhân, và đôi khi lại phụ thuộc vào nhu cầu Mỗi chế độ đều có ưu điểm và nhược điểm, phần này sẽ giúp các bạn hiểu được sự khác biệt giữa hai chế độ làm việc này trong BI Dev Studio
Chế độ Immediate
Khi làm việc trong chế độ này, bạn được kết nối trực tiếp và liên tục đến server Analysis Service Khi bạn mở một đối tượng (ví dụ : một cấu trúc mining) nghĩa là bạn đang mở đối tượng từ server Khi bạn thay đổi và lưu lại nó thì đối tượng được thay đổi
Trang 34Mặc dù chế độ này rất thân thiện và dễ hiểu, nhưng bạn nên xem xét kỹ các nhân tố trong suốt quá trình sử dụng Nếu bạn sử dụng chế độ này để làm trong sản xuất và bạn thay đổi, lưu project đó thì lập tức nó sẽ được thay đổi và trở thành chưa gia công, dẫn đến bất kỳ câu truy vấn đối với mô hình đó sẽ bị lỗi Hơn nữa, những người dùng khác có thể thay đổi khi họ được phép mở project đó Bạn sẽ thấy có cảnh báo khi cố gắng lưu một đối tượng nếu đối tượng đó đã bị thay đổi Khi lưu lại tức là viết chồng lên bất kỳ thay đổi nào những người dùng trước đã làm Các thay đổi đối tượng trên server sẽ được phản ánh lại trong project của bạn chỉ khi nào bạn tắt và mở lại đối tượng Các đối tượng mới và đã xóa trong cơ sở dữ liệu chỉ được phản ánh lại khi bạn đóng và mở lại chính project đó.
Một ưu điểm lớn mà chế độ Immediate hơn hẳn chế độ Offline phải làm việc một cách bảo mật Chế độ Immediate chỉ cho phép bạn thực hiện trong giới hạn một cơ sở dữ liệu đơn, và cho phép người dùng Admin tạo, thay đổi các đối tượng Việc sử dụng chế độ Offline đòi hỏi người dùng phải là Admin đối với toàn bộ các trường hợp server
Trang 35Hình 2: Hộp thoại kết nối tới cơ sở dữ liệu trong chế độ Immediate
Chế độ Offline
Khi bạn làm việc với chế độ Offline, project của bạn sẽ chứa các file được lưu trữ trên máy client Khi bạn thay đổi các đối tượng trong môi trường, những thay đổi đó được lưu theo định dạng XML trên ổ đĩa cứng Mô hình và các đối tượng khác không được tạo
ra trên server cho đến khi bạn quyết định triển khai chúng đến server đích Điều này cho phép bạn thiết kế và kiểm tra mô hình của bạn trên một server kiểm tra trước khi triển khai chúng tới một server hoạt động Những file này cũng được đánh dấu vào một hệ thống điềukhiển nguồn để theo dõi bất kỳ thay đổi nào của đối tượng metadata tại mọi thời điểm và
để chia sẻ giữa các thành viên trong một tổ thiết kế Bạn có thể xem và hiệu chỉnh source
Trang 36code của các file này bằng cách right-click vào một đối tượng trong Solution Explorer và chọn View Code.
Khi bạn triển khai một project, BI Dev Studio sẽ xác nhận tính hợp lệ của các đối tượng trong project của bạn và tạo ra một tập lệnh triển khai, sau đó gửi tập lệnh đó tới server Đơn vị của sự triển khai là toàn bộ project, đại diện cho toàn bộ bộ dữ liệu AnalysisService Các công cụ đủ để có thể triển khai các thay đổi tăng lên trong khi bạn làm việc trên một project Tuy nhiên, nếu bạn triển khai project tới một server có cùng bộ dữ liệu hoặc nếu project được triển khai từ một máy khác thì việc triển khai sẽ viết chồng lên toàn
bộ bộ dữ liệu Nhưng điều này sẽ được cảnh báo trước khi bạn thực thi Đồng thời, cũng bởi một bộ dữ liệu được tạo ra trong lúc triển khai nên bạn phải là Admin của server để triển khai một project từ chế độ Offline tới Server
Cách sử dụng chế độ Offline
- Mở BI Dev Studio
- Chọn New => Project từ menu File Hộp thoại New Project xuất hiện như hình 3
Trang 37Hình 3 Hộp thoại New Project.
Mở ngôn ngữ khác trên ô project types nếu nó không được mở
Chọn Business Intelligence Projects
Chọn Analysis Services Project từ ô Templates
Gõ vào tên project và click OK
Chọn Build => Deploy để triển khai project tới server, tạo cơ sở dữ liệu
Theo mặc định, project sẽ triển khai tới server local host Để thay đổi server đích, chọn Project => Properties Hộp thoại Configuration Property Management sẽ xuất hiện, lúc này bạn có thể tạo cấu hình triển khai khác và chỉ rõ server đích và tên cơ sở dữ liệu cho cấu hình như minh họa ở hình 4
Hình 4 : Hộp thoại Project Properties.
Chuyển đổi giữa các chế độ làm việc:
Trang 38Bạn làm việc trong một chế độ và cần một chế độ làm việc khác nữa chẳng hạn khi bạn cập nhật nhanh tới một project từ một máy khác, hoặc khi bạn muốn lưu lại đối tượng metadata của một cơ sở dữ liệu đang hoạt động tới nguồn điều khiển Việc này khá dễ dàng.
Cách dễ dàng nhất để thực hiện điều này là chuyển đổi từ chế độ Offline sang chế
độ Immediate Bạn vào Menu File, chọn Open => Analysis Services Database, và chọn cơ
sở dữ liệu bạn vừa triển khai Khi muốn chuyển từ chế độ Immediate sang chế độ Offline, bạn tạo một project mới và chọn Import Analysis Services 2008 Database trong hộp thoại New Project (như ở hình 3) Một wizard sẽ xuất hiện cho phép bạn chỉ ra server và tên cơ
sở dữ liệu nguồn,, sau đó giải nén metadata vào một project mới Chú ý rằng bạn vẫn phải thiết lập tùy chọn triển khai để cho biết server đích và tên cơ sở dữ liệu cần thiết
IV.1.3 Tạo các đối tượng data mining
Sau khi bạn mở dữ liệu hoặc project, các toán tử hoạt động bên trong project
Analysis Services đều giống nhau đối với bất kỳ chế độ hoạt động nào bạn chọn Để thực hiện nhiệm vụ data mining, bạn phải chỉ rõ và mô tả dữ liệu nguồn và sau đó tạo ra cấu trúc
và mô hình mining
Tìm hiểu các dữ liệu nguồn:
Vấn đề thứ nhất là vị trí dữ liệu Không giống như hầu hết các sản phẩm data
mining, SQL Server Data mining là một giải pháp dựa vào Server Điều này nghĩa
là khi bạn thiết lập dữ liệu nguồn, cả máy client và server đều được phép sử dụng được dữ liệu nguồn này
Vấn đề thứ hai là tính bảo mật, điều này rất quan trọng để biết chứng thực người dùng được phép truy cập dữ liệu từ Analysis Services Khi bạn thiết lập kết nối, bạn
có thể chọn integrated security (khi phần chứng thực tài khoản được yêu cầu để truy cập dữ liệu) hoặc có thể chọn simple security (khi một username và password được
yêu cầu để truy cập dữ liệu) Microsoft khuyến cáo người sử dụng nên dùng
integrated security nếu được hỗ trợ
Trang 39Cách tạo dữ liệu nguồn (Ở đây lấy ví dụ là tạo dữ liệu MovieClick)
Để tạo dữ liệu nguồn từ cơ sở dữ liệu MovieClick, ta thực hiện như sau:
Download cơ sở dữ liệu MovieClick và cài đặt nó
Right-click vào thư mục Data sources ở Solution Explorer hoặc Object Explorer và chọn New Data Source, sẽ xuất hiện cửa sổ Data Source Wizard
Bỏ qua cửa sổ giới thiệu, và click vào nút New Connection vào cửa sổ 2 để đến hộp thoại Data Link
Gõ vào tên Server nơi bạn cài đặt dữ liệu, chỉ rõ cài đặt bảo mật, và chọn cơ sở dữ liệu MovieClick
Click OK để thoát khỏi hộp thoại Data Link Click Next, khi đó xuất hiện cửa sổ Impersonation Information
Gõ vào username và password bạn muốn sử dụng để truy cập dữ liệu MovieClick,
và click Finish để kết thúc
Cách sử dụng Data Source View
DSV là nơi bạn chọn, tổ chức, khám phá và điều khiển dữ liệu
Cách tạo Data Source View MovieClick:
Right-click thư mục Data Source Views trong Solution Explorer hoặc Oject
Explorer và chọn New Data Source View để đến Data Source View Wizard
Bỏ qua cửa sổ giới thiệu Ở cửa sổ kế tiếp, cửa sổ Data Source View Wizard, mặc định dữ liệu nguồn MovieClick sẽ được chọn Click Next để tiếp tục
Trang 40 Ở cửa sổ tiếp theo Name Matching chọn Next để tiếp tục.