LÝ THUYẾT VỀ KHO DỮ LIỆU VÀ LÝ THUYẾT KHAI PHÁ DỮ LIỆU
Trang 1CHƯƠNG I :ĐẶT VẤN ĐỀ1 Đặt vấn đề
Trong xu thế toàn cầu hóa và tự do hóa thương mại, nền kinh tế thế giới và khu vực tiếp tục biến đổi nhanh chóng và sâu sắc trên nhiều mặt Cách mạng khoa học, công nghệ nói chung và công nghệ thông tin nói riêng tiếp tục phát triển nhanh; cuộc đấu tranh dân tộc, đấu tranh giai cấp trên toàn thế giới cũng như ở nước ta đang diễn ra hết sức phức tạp, đặt ra yêu cầu đối với các ngành kinh tế nước ta là phải nắm bắt được các công nghệ hiện đại, chủ động trong hội nhập, thực hiện công nghiệp hóa, hiện đại hóa theo định hướng xã hội chủ nghĩa Đối với nghành Bưu chính Viễn thông, xu thế hội nhập, cạnh tranh, sức ép giảm giá cước viễn thông, những đòi hỏi xã hội đối với việc nâng cao chất lượng các dịch vụ bưu chính viễn thông ngày càng cao Ở một số lĩnh vực, một số dịch vụ, việc cạnh tranh đã trở nên gay gắt.
Ngành công nghiệp viễn thông lưu trữ một khối lượng dữ liệu khổng lồ, bao gồm chi tiết cuộc gọi, thông tin cảnh báo tình trạng hệ thống mạng viễn thông và thông tin dữ liệu về khách hàng Khả năng ứng dụng kỹ thuật khai phá dữ liệu (Data Mining) để phát hiện các quy luật ẩn chứa trong khối dữ liệu khổng lồ, giúp đưa ra các quyết định đúng đắn mang lại cho các doanh nghiệp viễn thông cơ hội để phát triển dựa trên các hoạch định chính xác mang tính lịch sử và thực tiễn cao Đây là một hướng đi phù hợp và đã sớm được áp dụng phổ biến ở nhiều công ty viễn thông lớn trên thế giới.
Chính vì lý do đó Ứng dụng DataMining cho phát triển các thuê bao điện thọai cố định sẽ giúp phát triển các thuê bao đặc biệt ở Hà Nội.
2 Mục tiêu của nghiên cứu khoa học
Mục tiêu đề tài là sử dụng công cụ SQL 2005 trong ứng dụng DataMining cho việc phát triển các thuê bao điện thoại cố định ở Hà Nội, bao gồm các vấn đề chính sau:
Nắm bắt được khái quát lý thuyết về DataMining Công cụ sử dụng SQL 2005
Trang 2 Đưa ra được các báo cáo, kết quả bài toán phát triển thuê bao điện thoại cố định giúp cho việc đưa ra các quyết định nhằm giúp ích cho việc đưa ra chiến lược phát triển thuê bao ở Hà Nội
CHƯƠNG II: PHƯƠNG PHÁP NGHIÊN CỨU
Để thực hiện Đề tài, em đã sử dụng một số phương pháp nghiên cứu sau:
1.Nghiên cứu lý thuyết Kho dữ liệu và Khai phá dữ liệu
2.Tìm hiểu công cụ SQL 2005 với khả năng hỗ trợ Kho dữ liệu và Khai phá dữ liệu
3.Tìm hiểu bài toán Phát triển thuê bao
4.Ứng dụng bài toán Phát triển thuê bao để cài đặt Kho dữ liệu trên SQL 2005
CHƯƠNG III: KẾT QUẢ NGHIÊN CỨU
1 Nắm được lý thuyết về kho dữ liệu(DataWareHouse-DW) và lý thuyết về khai phá dữ liệu(DataMining)
1.1 Kho dữ liệu:
Có thể nói gọn nghành tin học trong ba từ là lưu trữ, xử lý và khác thác thông tin Về mặt lưu trữ, các hệ quản trị cơ sở dữ liệu đều thực hiện rất tốt Tuy nhiên, khi lượng thông tin cần lưu trữ và khai thác trở nên khổng lồ đặc biệt trong những nghành như ngân hàng, tài chính…đã làm nảy sinh khái niệm
DataWarehouse hay kho dữ liệu.
Kho dữ liệu là tuyển tập các cơ sở dữ liệu tích hợp, hướng chủ đề, được thiết kế để hỗ trợ cho chức năng trợ giúp quyết định, mà mỗi đơn vị dữ liệu đều liên quan tới một khỏang thời gian cụ thể.
Nói cách khác, kho dữ liệu là một tập hợp các cơ sở dữ liệu rất lớn tới hàng trăm GB hay thậm chí hàng Terabyte dữ liệu từ nhiều phân hệ của hệ thống, lưu trữ và phân tích phục vụ cho việc cung cấp các dịch vụ thông tin liên quan tới nghiệp vụ hệ thống.
Mục tiêu chính của kho dữ liệu là giải quyết những vấn đề cơ bản sau:
Trang 31.1.1 Tích hợp dữ liệu và các siêu dữ liệu từ những nguồn khác nhau
1.1.2 Nâng cao chất lượng dữ liệu bằng các phương pháp làm sạch và tinh lọc dữ
liệu theo những hướng chủ đề nhất định.
1.1.3 Tổng hợp và kết nối dữ liệu
1.1.4 Đồng bộ hóa các nguồn dữ liệu với DW
1.1.5 Phân định và đồng nhất các hệ quản trị cơ sở dữ liệu tác nghiệp như là các
công cụ chuẩn để phục vụ cho DW.
1.1.6 Quản lý những siêu dữ liệu
1.1.7 Cung cấp các thông tin được tích hợp, tóm tắt hoặc được liên kết, được tổ chức
theo các chủ đề.
1.1.8 Dùng trong các hệ thống hỗ trợ quyết đinh.1.2 Khai phá dữ liệu:
Khai phá dữ liệu (Data mining - DM) là một khái niệm ra đời vào những năm
cuối của thập kỷ 80 Nó bao hàm một loạt các kỹ thuật nhằm phát hiện ra các thông
tin có giá trị tiềm ẩn trong các tập dữ liệu lớn (các kho dữ liệu) Về bản chất, khai
phá dữ liệu liên quan đến việc phân tích các dữ liệu và sử dụng các kỹ thuật để tìmra các mẫu hình có tính chính quy (regularities) trong tập dữ liệu
Quá trình khai phá dữ liệu sẽ tiến hành qua 6 giai đoạn như hình 1.1
Trang 4Hình 1.1 Quá trình khai phá dữ liệu 6 giai đoạn
Bắt đầu quá trình là kho dữ liệu thô và kết thúc là tri thức được chiết xuất Đây là một quá trình rất phức tạp và khó khăn như: quản lý các tập dữ liệu, phải lặp đi lặp lại toàn bộ quá trình,.v.v.
Gom dữ liệu (Gathering)
Tập hợp dữ liệu là bước đầu tiên trong quá trình khai phá dữ liệu Là bước khai thác trong một cơ sở dữ liệu, một kho dữ liệu hoặc dữ liệu từ các nguồn ứng dụng Web Trích lọc dữ liệu (Selection)
Dữ liệu được lựa chọn hoặc phân chia theo một số tiêu chuẩn, ví dụ chọn tất cả những người có tuổi đời từ 25 – 35 và có trình độ đại học.
Làm sạch, tiền xử lý và chuẩn bị dữ liệu (Cleansing, Pre-processing and Preparation)
Là bước rất quan trọng trong quá trình khai phá dữ liệu “làm sạch - tiền xử lý - chuẩn bị trước”.
Trang 5Một số lỗi thường mắc phải là tính phi logíc dữ liệu như chứa các giá trị vô nghĩa và gây lỗi dữ liệu Ví dụ: tuổi = 673 Đây là giai đoạn tiến hành xử lý những dạng dữ liệu không chặt chẽ, phi logic, loại bỏ những dữ liệu dư thừa không có giá trị.
Chuyển đổi dữ liệu (Transformation)
Bước chuyển đổi dữ liệu: dữ liệu được sử dụng và điều khiển bởi việc tổ chức lại giúp chuyển đổi phù hợp với mục đích khai thác.
Phát hiện và trích mẫu dữ liệu (Pattern Extraction and Discovery)
Là bước mang tính tư duy trong khai phá dữ liệu Giai đoạn sử dụng nhiều thuật toán khác nhau để trích ra các mẫu dữ liệu Thuật toán thường dùng là nguyên tắc phân loại, nguyên tắc kết hợp hoặc các mô hình dữ liệu tuần tự, v.v
Đánh giá kết quả mẫu (Evaluation of Result)
Là giai đoạn cuối trong quá trình khai phá dữ liệu Các mẫu dữ liệu được chiết xuất ra bởi phần mềm khai phá dữ liệu Không phải mẫu dữ liệu nào cũng hữu ích, đôi khi còn bị sai lệch Vì vậy, cần ưu tiên những tiêu chuẩn đánh giá để chiết xuất ra các tri thức (Knowlege) cần thiết.
2 Tìm hiểu công cụ SQL 2005 2.1 SQL Manager Studio
Quản lý CSDL: cho phép quản lý dự án một cách tốt nhất từ việc tạo đến khi bảo trì CSDL.
Các chức năng hầu như tương tự với SQL Manager 2000, ngoài ra SQL Manager Studio 2005 còn hỗ trợ việc quản lý của các dự án SQL Analysis, SQL Integrate, SQL Report Quản lý các hoạt động Chạy của các dự án.
2.2 SQL Intergrate
Công cụ cho phép người quản trị tích hợp dữ liệu từ nhiều nguồn dữ liệu khác nhau: Text(có cấu trúc), Excel, Access, SQL, Oracle.
Trang 6Cơ chế này cho phép chuyển đổi hầu hết các dữ liệu có dạng cấu trúc vào CSDL SQL 2005 Với khả năng linh hoạt cho phép lựa chọn những dữ liệu cần thiết, ngoài ra còn cho phép thông báo ra những dữ liệu không hợp lệ theo ý người dùng.(Cơ chế báo lỗi ngoài ý muốn).
Hỗ trợ khả năng tích hợp một cách linh hoạt, có thể sử dụng được các Query để phụ giúp cho quá trình tích hợp dữ liệu, có thể bổ sung dữ liệu mới mà có liên quan tới dữ liệu đã có trong CSDL(dữ liệu có tính tham chiếu).
2.3 SQL Analysis
Là công cụ cho phép người quản trị phân tích kho dữ liệu theo nhiều cách để giúp cho việc đưa ra các báo cáo mang tính chiến lược, các dữ liệu khác.
- Cho phép thiết kế, tạo, quản lý các khối và Làm việc với Data-Mining nhằm khai thác dữ liệu.
SQL Analysis bao gồm: Data Sources, Data Source Views, Cubes, Dimensions, Mining Structures, Roles, Assemblies, and Miscellaneous
1 Project bao gồm nhiều Cube khác nhau Cube bao gồm các độ đo và các chiều
Xây dựng Cube có thể sử dụng theo mô hình star schema và snowflake schema
c Measures, Attributes and Hierarchies (kỹ thuật của UDM)
- Measures: là thông tin chính cần phân tích.
- Attributes: là các thông tin về chiều cần phân tích theo các hướng khác nhau.
- Hiearchies: là khả năng Tổng quát hóa và Chi tiết hóa của DataMining Hỗ trợ khả năng sử dụng các SQL để tạo ra các dữ liệu Tổng quát hơn.
d Mining Structures
Trang 7Mục đích tạo định hướng cho nguồn dữ liệu giúp tìm ra quy luật của dữ liệu, tách được dữ liệu ở mức cao hơn
Hỗ trợ các thuật toán DataMining giúp cho việc phân tích dữ liệu như: Microsoft Decition trees, Microsoft Clustering, Microsoft Linear Regression, Microsoft Logistic Regression, Microsoft Naive Bayes, Microsoft Neural Network, Microsoft Sequence Clustering, Microsoft Time Series.
e Roles, Assemblies, and Miscellaneous
2.4.SQL Report
Giúp ích cho việc đưa ra các báo cáo dưới dạng văn bản hoặc trình duyệt giúp cho người quản lý, lãnh đạo có thể xem để đưa ra các quyết định
Báo cáo có thể đưa ra dưới nhiều dạng khác nhau: HTML, Web(server), Doc, Excel, Pdf, Image Hoặc có thể đưa dữ liệu lên Server để Server trực tiếp Connect tới DataWarehouse.
Report trong SQL đưa ra các báo cáo từ dữ liệu có trực tiếp trong CSDL Ngoài ra bao gồm các dữ liệu khác như dữ liệu từ việc Phân tích các Khối, dữ liệu từ phân tích DataMining.
Report hỗ trợ việc định dạng báo cáo: dữ liệu có thể được định dạng tùy theo ý muốn: dữ liệu dạng số, ngày đặc biệt hỗ trợ rất nhiều dạng biểu đồ mang tính trực quan cho người xem báo cáo.
Basic Report: Tạo các báo cáo đơn giản như sử dụng các Query thông
thường trong SQL để đưa thông tin ra.
Group Report: Tạo ra các nhóm báo cáo giúp cho việc định dạng khuôn
dạng của 1 nhóm để đưa dữ liêu lên Server Trong đó bao gồm việc tạo các Mẫu báo cáo.
3 Tìm hiểu bài toán Phát triển thuê bao
Trang 8Bài toán Phát triển thuê bao điện thoại ở Hà Nội gắn liền với việc ngày càng có nhiều khách hàng làm Hợp đồng, đăng kí sử dụng các dịch vụ của Bưu điện Cơ sở dữ liệu bao gồm có 19 bảng : DICHVU_VT, DOITUONG, DONVI, QUANHUYEN, DUONGPHO, MAPHO, PHUONGXA, HD_KHACHHANG, HD_THANHTOAN, HD_THUEBAO, KIEU_LD, KIEU_TT, LOAI_HD, LOAI_KH, LOAI_NV, LOAIHINH_TB, NGANHANG,
NHANVIEN, PHI_HOPDONG
4 Ứng dụng bài toán Phát triển thuê bao sử dụng SQL 20054.1 Lược đồ quan hệ kho dữ liệu
Trang 94.2 Sơ đồ tích hợp dữ liệu từ các File Excel vào Kho dữ liệu4.2.1 Tích hợp từ các File Excel vào Bộ đệm
Tích hợp dữ liệu từ nguồn Excel vào bảng QUANHUYEN
Tạo kết nối tới nguồn exel
Chuyển đổi kiểu dữ liệu sao cho đúng kiểu Chèn dữ liệu vào bộ đệm
Tích hợp dữ liệu từ nguồn Excel vào bảng PHUONGXA
Trang 10 Tạo kết nối tới nguồn Exel
Chuyển đổi dữ liệu sao cho đúng kiểu
Kiểm tra ràng buộc tham chiếu với bảng Quanhuyen Chèn dũ liệu vào bộ đệm
Tích hợp dữ liệu từ nguồn Excel vào bảng DUONGPHO
Trang 11
Tạo kết nối tới nguồn Exel
Chuyển đổi kiểu dữ liệu sao cho đúng kiểu Chèn dữ liệu vào bộ đệm
Tích hợp dữ liệu từ nguồn Excel vào bảng MAPHO
Tạo kết nối tới nguồn Exel
Chuyển đổi kiểu dữ liệu cho đúng
Kiểm tra ràng buộc tham chiếu với bảng PHUONGXA Kiểm tra ràng buộc tham chiếu với bảng DUONGPHO Chèn dữ liệu vào bộ đệm
Tích hợp dữ liệu từ nguồn Excel vào bảng DICHVU_VIENTHONG
Trang 12
Tạo kết nối tới nguồn Exel
Chuyển đổi kiểu dữ liệu sao cho đúng kiểu Chèn dữ liệu vào bộ đệm
Tích hợp dữ liệu từ nguồn Excel vào bảng DONVI
Tạo kết nối tới ngùôn Exel
Chuyển đổi kiểu dữ liệu sao cho đúng kiểu Chèn dữ liệu vào bộ đệm
Trang 13
Tích hợp dữ liệu từ nguồn Excel vào bảng LOAIHINH_TB
Tạo kết nối tới nguồn Exel
Chuyển đổi kiểu dữ liệu sao cho đúng kiểu
Trang 14 Kiểm tra ràng buộc tham chiếu với bảng DICHVU_VIENTHONG
Chèn dữ liệu vào bộ đệm
Tích hợp dữ liệu từ nguồn Excel vào bảng PHI_HD
Tạo kết nối tới nguồn Exel
Chuyển đổi kiểu dữ liệu sao cho đúng kiểu Kiểm tra ràng buộc tham chiếu với bảng DICHVU_VIENTHONG
Chèn dữ liệu vào bộ đệm
Tích hợp dữ liệu từ nguồn Excel vào bảng KIEU_LD
Trang 15
Tạo kết nối tới nguồn Exel
Chuyển đổi dữ liệu sao cho đúng kiểu
Kiểm tra ràng buộc tham chiếu với bảng LOAI_HD Kiểm tra ràng buộc tham chiếu với bảng
Tích hợp dữ liệu từ nguồn Excel vào bảng KIEU_TT
Trang 16
Tạo kết nối tới nguồn Exel
Chuyển đổi dữ liệu sao cho đúng kiểu Chèn dữ liệu vào bộ đệm
Tích hợp dữ liệu từ nguồn Excel vào bảng LOAI_HD
Tạo kết nối tới nguồn Exel
Chuyển đổi kiểu dữ liệu sao cho đúng kiểu Chèn dữ liệu vào bộ đệm
Trang 17
Tích hợp dữ liệu từ nguồn Excel vào bảng DOITUONG
Tạo kết nối tới nguồn Exel
Chuyển đổi kiểu dữ liệu sao cho đúng kiểu
Kiểm tra ràng buộc tham chiếu với bảng LOAI_KH Chèn dữ liệu vào bộ đệm
Trang 18 Tích hợp dữ liệu từ nguồn Excel vào bảng NGANHANG
Tạo kết nối tới nguồn Exel
Chuyển đổi kiểu dữ liệu sao cho đúng kiểu Chèn dữ liệu vào bộ đệm
Tích hợp dữ liệu từ nguồn Excel vào bảng LOAI_NHANVIEN
Trang 19
Tạo kết nối tới nguồn Exel
Chuyển đổi kiểu dữ liệu sao cho đúng kiểu Chèn dữ liệu vào bộ đệm
Tích hợp dữ liệu từ nguồn Excel vào bảng NHANVIEN
Tạo kết nối tới nguồn Exel
Chuyển đổi kiểu dữ liệu sao cho đúng kiểu
Kiểm tra ràng buộc tham chiếu với bảng LOAI_NV Kiểm tra ràng buộc tham chiếu với bảng DONVI Chèn dữ liệu vào bộ đệm
Trang 20
Tích hợp dữ liệu từ nguồn Excel vào bảng LOAI_KH
Tạo kết nối tới nguồn Exel
Chuyển đổi kiểu dữ liệu sao co đúng kiểu Chèn dữ liệu vào bộ đệm
Tích hợp dữ liệu từ nguồn Excel vào bảng HOPDONG_TB
Trang 21
Tạo kết nối tới nguồn Exel
Chuyển đổi kiểu dữ liệu sao cho đúng kiểu
Kiểm tra ràng buộc tham chiếu với bảng LOAIHINH_TB Kiểm tra ràng buộc tham chiếu với bảng KIEU_LD Kiểm tra ràng buộc tham chiếu với bảng KIEU_TT Kiểm tra ràng buộc tham chiếu với bảng DOITUONG
Trang 22 Kiểm tra ràng buộc tham chiếu với bảng DONVI Kiểm tra ràng buộc tham chiếu với bảng MAPHO
Kiểm tra ràng buộc tham chiếu với bảng HOPDONG_TT Chèn dữ liệu vào bộ đệm
Tích hợp dữ liệu từ nguồn Excel vào bảng HOPDONG_KH
Tạo kết nối tới nguồn Exel
Chuyển đổi kiểu dữ liệu sao cho đúng kiểu
Kiểm tra ràng buộc tham chiếu với bảng DONVI Kiểm tra ràng buộc tham chiếu với bảng NHANVIEN Kiểm tra ràng buộc tham chiếu với bảng MAPHO Chèn dữ liệu vào bộ đệm
Tích hợp dữ liệu từ nguồn Excel vào bảng HOPDONG_TT
Trang 23 Tạo kết nối tới nguồn Exel
Chuyển đổi kiểu dữ liệu sao cho đúng kiểu
Kiểm tra ràng buộc tham chiếu với bảng MAPHO
Kiểm tra ràng buộc tham chiếu với bảng HOPDONG_KH Kiểm tra ràng buộc tham chiếu với bảng DONVI
Kiểm tra ràng buộc tham chiếu với bảng NGANHANG Chèn dữ liệu vào bộ đệm
Trang 244.2.2 Tích hợp từ bộ đệm vào Kho dữ liệu
Tích hợp dữ liệu từ bộ đệm vào bảng QUANHUYEN
Trang 25
Tạo kết nối tới nguồn bộ đệm
Chuyển đổi kiểu dữ liệu sao cho đúng kiểu Chèn dữ liệu vào kho
Tích hợp dữ liệu từ bộ đệm vào bảng PHUONGXA
Tạo kết nối tới nguồn bộ đệm
Chuyển đổi dữ liệu sao cho đúng kiểu Chèn dũ liệu vào kho
Tích hợp dữ liệu từ bộ đệm vào bảng DUONGPHO
Trang 26
Tạo kết nối tới nguồn bộ đệm
Chuyển đổi kiểu dữ liệu sao cho đúng kiểu Chèn dữ liệu vào kho
Tích hợp dữ liệu từ bộ đệm vào bảng MAPHO
Trang 27
Tạo kết nối tới nguồn bộ đệm Chuyển đổi kiểu dữ liệu cho đúng Chèn dữ liệu vào kho
Tích hợp dữ liệu từ bộ đệm vào bảng DICHVU_VIENTHONG
Tạo kết nối tới nguồn bộ đệm
Chuyển đổi kiểu dữ liệu sao cho đúng kiểu Chèn dữ liệu vào kho
Tích hợp dữ liệu từ bộ đệm vào bảng DONVI
Tạo kết nối tới ngùôn bộ đệm
Chuyển đổi kiểu dữ liệu sao cho đúng kiểu Chèn dữ liệu vào kho