Tài liệu Khóa luận Áp dụng Data Warehouse trong phân tích thông tin về các dịch vụ giá trị gia tăng trên điện thoại: ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
Nguyễn Lương Thái Đức
Áp dụng Data Warehouse trong phân tích thông tin về
các dịch vụ giá trị gia tăng trên điện thoại
KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY
Ngành: Công Nghệ Thông Tin
HÀ NỘI - 2010
ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
Nguyễn Lương Thái Đức
Áp dụng Data Warehouse trong phân tích thông tin về
các dịch vụ giá trị gia tăng trên điện thoại
KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY
Ngành: Công Nghệ Thông Tin
Cán bộ hướng dẫn: ThS. Lê Hồng Hải
HÀ NỘI - 2010
1
LỜI CẢM ƠN
Trước tiên, em muốn gửi lời cảm ơn sâu sắc nhất đến thầy giáo ThS. Lê Hồng Hải, người
đã tận tình hướng dẫn em trong suốt quá trình nghiên cứu và hoàn thành khóa luận tốt
nghiệp.
Em xin bày tỏ lời cảm ơn sâu sắc đến những thầy cô giáo đã giảng dạy em trong bốn năm
qua, những kiến thức mà em nhận được trên giảng đường đại học sẽ là hành trang giúp
em vững bước trong tương lai.
Cuối cùng, em muốn g...
71 trang |
Chia sẻ: haohao | Lượt xem: 1453 | Lượt tải: 0
Bạn đang xem trước 20 trang mẫu tài liệu Khóa luận Áp dụng Data Warehouse trong phân tích thông tin về các dịch vụ giá trị gia tăng trên điện thoại, để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
Nguyễn Lương Thái Đức
Áp dụng Data Warehouse trong phân tích thông tin về
các dịch vụ giá trị gia tăng trên điện thoại
KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY
Ngành: Công Nghệ Thông Tin
HÀ NỘI - 2010
ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
Nguyễn Lương Thái Đức
Áp dụng Data Warehouse trong phân tích thông tin về
các dịch vụ giá trị gia tăng trên điện thoại
KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY
Ngành: Công Nghệ Thông Tin
Cán bộ hướng dẫn: ThS. Lê Hồng Hải
HÀ NỘI - 2010
1
LỜI CẢM ƠN
Trước tiên, em muốn gửi lời cảm ơn sâu sắc nhất đến thầy giáo ThS. Lê Hồng Hải, người
đã tận tình hướng dẫn em trong suốt quá trình nghiên cứu và hoàn thành khóa luận tốt
nghiệp.
Em xin bày tỏ lời cảm ơn sâu sắc đến những thầy cô giáo đã giảng dạy em trong bốn năm
qua, những kiến thức mà em nhận được trên giảng đường đại học sẽ là hành trang giúp
em vững bước trong tương lai.
Cuối cùng, em muốn gửi lời cảm ơn sâu sắc đến gia đình và bạn bè, những người luôn
kịp thời động viên và giúp đỡ em vượt qua những khó khăn trong cuộc sống.
Hà nội, ngày 21/05/2010
Nguyễn Lương Thái Đức
2
DANH SÁCH HÌNH VẼ ................................................................................................................ 5
THUẬT NGỮ VÀ VIẾT TẮT ....................................................................................................... 7
TÓM TẮT NỘI DUNG .................................................................................................................. 8
MỞ ĐẦU ........................................................................................................................................ 9
Chương 1: Tổng quan ..................................................................................................................... 8
1.1 Tổng quan về hệ thống và lý do lựa chọn đề tài. ................................................................ 11
1.2 Dữ liệu của hệ thống . ......................................................................................................... 12
1.3 Mục tiêu và phạm vi của đề tài. .......................................................................................... 12
1.3.1 Mục tiêu. ...................................................................................................................... 12
1.3.2 Phạm vi của đề tài. ....................................................................................................... 13
1.4. Công cụ thực hiện ......................................................................................................... 13
1.4.2 Hệ quản trị cơ sở dữ liệu cho kho dữ liệu ................................................................... 13
1.4.2 Công cụ xây dựng kho dữ liệu. .................................................................................... 13
1.4.3 Công cụ xây dựng báo cáo........................................................................................... 13
CHƯƠNG 2: TỔNG QUAN VỀ DATA WAREHOUSE............................................................ 14
2.1 Định nghĩa kho dữ liệu. ...................................................................................................... 14
2.2 Các đặc trưng của kho dữ liệu ............................................................................................ 14
2.2.1 Hướng chủ đề .............................................................................................................. 14
2.2.2 Tính tích hợp................................................................................................................ 14
2.2.3 Tính bền vững: ............................................................................................................. 14
2.2.4 Gắn với thời gian . ....................................................................................................... 15
2.2.5 Dữ liệu tổng hợp : ........................................................................................................ 15
2.3 Kiến trúc của kho dữ liệu.................................................................................................... 15
2.3.1 Nguồn dữ liệu . ........................................................................................................... 15
2.3.2 Khu vực xử lý . ............................................................................................................ 16
2.3.2.1 Nhiệm vụ :............................................................................................................. 16
2.3.2.2 Các bước :. ............................................................................................................ 16
2.3.2.3 Các kiểu kiến trúc ETL......................................................................................... 17
2.3.3 Kho dữ liệu . ................................................................................................................ 19
2.4 Mô hình logic của kho dữ liệu ........................................................................................... 20
2.4.1 Lược đồ hình sao.......................................................................................................... 20
2.4.2 Lược đồ hình bông tuyết. ............................................................................................. 20
2.4.3 Mô hình dữ liệu nhiều chiều ........................................................................................ 21
2.5 Kho dữ liệu ngày nay.......................................................................................................... 22
2.5.1 Quản trị doanh nghiệp thông minh (Busines Intelligence). ......................................... 22
2.5.2 Quản lý mối quan hệ khách hàng................................................................................. 22
3
2.5.3 Khai phá dữ liệu .......................................................................................................... 22
2.5.4 Quản lý dữ liệu chủ ..................................................................................................... 23
2.5.5 Tích hợp dữ liệu khách hàng........................................................................................ 23
2.6 Xu hướng tương lai của kho dữ liệu ................................................................................... 23
2.6.1 Dữ liệu phi cấu trúc...................................................................................................... 24
2.6.2 Tìm kiếm...................................................................................................................... 24
2.6.3 Kiến trúc hướng dịch vụ. ............................................................................................. 24
2.6.4 Kho dữ liệu thời gian thực. .......................................................................................... 24
CHƯƠNG 3:TỔNG QUAN VỀ MICROSOFT SQL SERVER 2005 ........................................ 25
3.1 Tổng quan về hệ quản trị cơ sở dữ liệu Microsoft SQL Server. ......................................... 25
3.2 Tổng quan về SQL Server Integration Service(SSIS). ....................................................... 27
3.3 Tổng quan về SQL Server Analysis Service ...................................................................... 28
3.4 Tổng quan về ngôn ngữ truy vấn MDX.............................................................................. 30
3.5 Tổng quan về SQL Server Reporting Services. .................................................................. 33
3.6 Phương pháp xây dựng kho dữ liệu bằng các công cụ của Microsoft SQL Server 2005. .. 34
CHƯƠNG 4: PHÂN TÍCH THIẾT KẾ ........................................................................................ 36
4.1 Phân tích hệ thống nguồn.................................................................................................... 36
4.1.1 Chức năng thống kê báo cáo và theo dõi lịch sử hoạt động của khách hàng ............ 36
4.1.2 Quản lý quảng cáo của các dịch vụ.............................................................................. 37
4.2 Thiết kế kho dữ liệu. ........................................................................................................... 37
4.2.1 Kho dữ liệu chủ đề tổng hợp sản lượng dịch vụ. ......................................................... 37
4.2.2 Hệ thống quản lý quảng cáo ....................................................................................... 42
4.2.3 Kho dữ liệu chủ đề chi tiết sử dụng dịch vụ của khách hàng. .................................... 46
4.3 Sử dụng SSIS để xây dựng tiến trình ETL ........................................................................ 48
4.3.1 Mô tả chung . ............................................................................................................... 48
4.3.2 Ánh xạ dữ liệu cho các chiều. ...................................................................................... 48
4.3.2.1 Chiều mã dịch vụ. ................................................................................................. 48
4.3.2.2 Chiều mạng viễn thông ......................................................................................... 49
4.3.2.3 Chiều đầu số.......................................................................................................... 49
4.3.2.4 Chiều nhóm dịch vụ. ............................................................................................. 50
4.3.2.5 Chiều thời gian...................................................................................................... 50
4.3.2.6 Bảng sự kiện tổng hợp sản lượng ........................................................................ 50
4.3.2.7 Chiều Quảng cáo . ............................................................................................ 51
4.3.2.8 Chiều khách hàng.................................................................................................. 51
4.3.2.9 Ánh xạ dữ liệu cho bảng sự kiện quảng cáo. ....................................................... 52
4.3.2.10 Ánh xạ dữ liệu cho bảng sự kiện chi tiết dịch vụ............................................... 52
4.4 Sử dụng dịch vụ SSAS để xây dựng các cơ sở dữ liệu nhiều chiều .................................. 52
4
4.4.1 Xây dựng cube cho kho dữ liệu chủ đề tổng hợp sản lượng........................................ 52
4.4.2 Xây dựng cube cho kho dữ liệu chủ đề quảng cáo và chi phí...................................... 57
4.4.3 Xây dựng cube cho kho dữ liệu chủ đề chi tiết sử dụng dịch vụ. ............................... 58
4.4.4 Sử dụng truy vấn MDX để lấy dữ liệu trên cube ......................................................... 58
4.4 Sử dụng dịch vụ SSRS để xây dựng các báo cáo................................................................ 59
4.4.1 Báo cáo sản lượng đầu số. ........................................................................................... 59
4.4.1.1 Yêu cầu: ................................................................................................................ 59
4.4.1.2 Cách xây dựng . .................................................................................................... 59
4.4.2 Báo cáo sản lượng theo các mạng viễn thông.............................................................. 63
4.4.3 Báo cáo sản lượng theo đầu số và nhóm dịch vụ......................................................... 64
KẾT LUẬN................................................................................................................................... 66
5.1 Những điều đã làm được..................................................................................................... 66
5.2 Những điều chưa làm được và hướng phát triển................................................................ 66
TÀI LIỆU THAM KHẢO ............................................................................................................ 67
PHỤ LỤC 1................................................................................................................................... 68
PHỤ LỤC 2................................................................................................................................... 69
5
DANH SÁCH HÌNH VẺ
Hình 1.1 Kiến trúc kho dữ liệu ...................................................................................12
Hình 2.2 tiến trình ETL nằm ở nguồn dữ liệu ............................................................15
Hình 2.3 Tiến trình ETL nằm ở server chứa kho dữ liệu ..........................................15
Hình 2.3 Tiến trình ETL nằm ở server trung gian .....................................................16
Hình 2.4 Lược đồ hình sao ........................................................................................17
Hình 2.5 lược đồ hình bông tuyết ...............................................................................18
Hình 2.6 Mô hình dữ liệu nhiều chiều........................................................................18
Hình 3.1 Các dịch vụ của SQL Server 2005...............................................................22
Hình 3.2 Công cụ phát triển SSIS...............................................................................24
Hình 3.3 Kiến trúc của SSAS .....................................................................................26
Hình 3.4 Kết quả truy vấn...........................................................................................29
Hình 3.5 Kiến trúc của Reporting Service..................................................................31
Hình 3.5 Mô hình xây dựng kho dữ liệu.....................................................................32
Hình 4.1 sơ đồ kho dữ liệu tổng hợp sản lượng dịch vụ.............................................35
Hình 4.2 Sơ đồ kho dữ liệu chủ đề quảng cáo và doanh thu ......................................40
Hình 4.3Mô hình dữ liệu nguồn của chiều quảng cáo................................................42
Hình 4.4 Mô hình kho dữ liệu chủ đề chi tiết sử dụng dịch vụ ..................................43
Hình 4.5 Mô hình ETL ...............................................................................................45
Hình 4.6 Ánh xạ chiều mã dịch vụ ............................................................................46
Hình 4.7 Ánh xạ chiều mạng viễn thông ....................................................................46
Hình 4.8 Ánh xạ chiều đầu số.....................................................................................47
Hình 4.9 Ánh xạ nhóm dịch vụ...................................................................................47
Hình 4.10 Ánh xạ chiều quảng cáo.............................................................................48
Hình 4.11 Ánh xạ cho chiều khách hàng....................................................................49
Hình 4.12 Lược đồ kho dữ liệu tổng hợp sản lượng...................................................50
6
Hình 4.13 Chọn các bảng cho data soures views ......................................................51
Hình 4.14 Đặt các quan hệ cho các bảng....................................................................52
Hình 4.15 Quyết định các bảng chiều và sự kiện .......................................................53
Hình 4.17 Chọn các Measures. Các thành phần tính toán. .........................................53
Hình 4.18 Định nghĩa các hàm tính toán ....................................................................54
Hình 4.19 Kết quả hiển thị truy vấn ...........................................................................55
Hình 4.20 Xây dựng truy vấn .....................................................................................57
Hình 4.21 Thiết kế báo cáo.........................................................................................58
Hình 4.22 Màn hình xây dựng báo cáo.......................................................................58
Hình 4.22 Kết quả hiển thị. ........................................................................................59
Hình 4.24 Báo cáo theo mạng viễn thông...................................................................60
Hình 4.25 Báo cáo theo nhóm dịch vụ .......................................................................61
7
THUẬT NGỮ VÀ VIẾT TẮT
SSIS (SQL Server Intergration Services): Dịch vụ tích hợp dữ liệu của SQL Server 2005
SSAS(SQL Server Analysis Services): Dịch vụ phân tích dữ liệu của SQL Server 2005
SSRS(SQL Server Reporting Services): Dịch vụ quản lý báo cáo của SQL Server 2005
MSSQL(Microsoft SQL Server ): Hệ quản trị cơ sở dữ liệu của Microsoft.
OLAP (Online Transaction Processing): xử lý giao dịch trực tuyến.
ETL (Extract Transform Load ): Tiến trình trích xuất, chuyển đổi và nạp dữ liệu.
MDX(Multidimensional eXpressions) : Ngôn ngữ truy vấn đa chiều.
BIDS(Business Intelligence Deverlopment Studio) : công cụ phát triển của SQL Server 2005.
8
TÓM TẮT NỘI DUNG
Nội dung chính của đề tài là xây dựng kho dữ liệu cho việc quản lý kinh doanh các
dịch vụ giá trị gia tăng trên điện thoại tại Công Ty Cổ Phần Truyền Thông VMG Việt
Nam. Đề tài sẽ sử dụng các công cụ của Microsoft SQL Server 2005 để xây dựng kho
dữ liệu từ hệ thống hiện tại của công ty, quản lý kho dữ liệu và xây dựng các báo cáo
cho người dùng có thể xem qua web.
9
MỞ ĐẦU
Trong nền kinh tế hiện nay, thông tin là yếu tố sống còn đối với bất kỳ doanh nghiệp
nào.Việc nắm bắt thông tin giúp cho các doanh nghiệp hoạch định các chiến lược kinh
doanh cho mình một cách chính xác.
Trong những năm gần đây, công nghệ kho dữ liệu ra đời đáp ứng được nhu cầu quản lý,
lưu trữ thông tin có khối lượng lớn và có khả năng khai thác dữ liệu đa chiều và theo
chiều sâu nhằm hỗ trợ việc ra quyết định của các nhà quản lý.
Đối với các doanh nghiệp nước ngoài, họ đã áp dụng kho dữ liệu trong quản lý phân tích
dữ liệu và đã cho thấy hiệu quả to lớn giúp ích cho việc hoạch định các chiến lược kinh
doanh cũng như nghiên cứu phát triển các ứng dụng phân tích dữ liệu.
Tại Công Ty Cổ Phần Truyền Thông VMG , xây dựng kho dữ liệu có ý nghĩa hết sức
quan trọng. Kho dữ liệu sẽ thu thập dữ liệu từ các hệ thống nghiệp vụ, cung cấp các thông
tin hữu ích cho các nhà quản lý có thể có những thông tin chính xác nhanh chóng, hỗ trợ
cho việc ra các quyết định kịp thời và có lợi nhất cho doanh nghiệp. Ngoài ra kho dữ liệu
còn cung cấp cho những người phát triển các ứng dụng phân tích dữ liệu dễ dàng tiếp
cận dữ liệu, có được dữ liệu chính xác hơn và phát triển ứng dụng dễ dàng hơn.
Xuất phát từ nhu cầu thực tiễn tại Công Ty Cổ Phần Truyền Thông VMG , khóa luận sẽ
thực hiện “Áp dụng kho dữ liệu trong phân tích số liệu về các dịch vụ giá trị gia tăng trên
điện thoại” bằng công cụ của Microsoft SQL Server 2005 với mong muốn xây dựng
được kho dữ liệu hoàn chỉnh hỗ trợ cho việc quản lý tại Công Ty Cổ Phần Truyển Thông
VMG.
Nội dung của khóa luận bao gồm những phần chính như sau:
Mở đầu
Đây là phần giới thiệu chung về lý do chọn đề tài, cũng như bố cục chung của khóa luận
10
Chương 1: Tổng quan
Nội dung chính của chương này là nêu lên tổng quan về dữ liệu của hệ thống cung cấp
các dịch vụ giá trị gia tăng trên điện thoại, mục tiêu , phạm vi của đồ án , công cụ và
phương pháp xây dựng kho dữ liệu.
Chương 2: Tổng quan về Data WareHouse
Nội dung chính của chương này là trình bày tổng quan về data warehouse gồm: định
nghĩa, đặc tính,mô hình, kiến trúc và xu hướng tương lai của data warehouse.
Chương 3 Tổng quan về Microsoft SQL Server 2005
Mục tiêu chính của chương này nhằm giới thiệu về các công cụ sẽ được sử dụng để
xây dựng kho dữ liệu. Hệ quản trị cơ sở dữ liệu Microsoft SQL Server 2005 , dịch vụ
Sql Server Analysis Service , Ngôn ngữ truy vấn MDX trên cơ sở dữ liệu đa chiều,
dịch vụ Sql Server Reporting Service và hướng xây dựng kho dữ liệu bằng các công
cụ này.
Chương 4: Phân tích thiết kế và triển khai kho dữ liệu hoạt động dịch vụ
Nội dung chính của chương này bao gồm : Tìm hiểu về dữ liệu hệ thống, xác định
yêu cầu đặt ra , thiết kế mô hình kho dữ liệu dựa trên yêu cầu đã phân tích và dữ liệu
hệ thống nguồn, thiết kế tiến trình ETL để chuyển dữ liệu vào hệ thống, sử dụng công
cụ SQL Server Analysis Service để xây dựng các cơ sở dữ liệu nhiều chiều , sử dụng
công cụ SQL Reporting Service để xây dựng các báo cáo.
Kết luận
Đây là phần kết kuận của khóa luận đưa ra những điều đã làm được và chưa làm
được của khóa luận và hướng phát triển của khóa luận.
Các tài liệu tham khảo.
Các phụ lục
11
CHƯƠNG 1: TỔNG QUAN
Tóm lược nội dung :
Mục tiêu của chương này nhằm trình bày lý do lựa chọn đề tài, tổng quan về dữ liệu
của hệ thống cung cấp các dịch vụ giá trị gia tăng trên điện thoại, mục tiêu và phạm
vi của đồ án , công cụ và phương pháp xây dựng kho dữ liệu.
1.1 Tổng quan về hệ thống và lý do lựa chọn đề tài.
Công Ty Cổ Phần Truyền Thông VMG là một trong những đơn vị đi đầu về kinh
doanh dịch vụ giá trị gia tăng trên điện thoại di động. Công ty có một hệ thống theo
dõi và báo cáo sản lượng nhằm phục vụ cho báo cáo thống kê và phân tích hoạt động
của dịch vụ phục vụ cho việc quản lý. Hệ thống này hoạt động dựa trên số liệu về quá
trình sử dụng dịch vụ của khách hàng. Sau một thời gian dài hoạt động gần đây do dữ
liệu hệ thống ngày một gia tăng cùng với nhu cầu cao hơn trong phân tích số liệu
khách hàng hệ thống cũ đã không đáp ứng được các nhu cầu sau đây:
- Do dữ liệu ngày càng gia tăng vì thế tốc độ xử lý các truy vấn để tạo báo cáo
sản lượng chậm.
- Tổ chức dữ liệu theo mô hình cơ sở dữ liệu quan hệ khiến cho việc truy vấn
dữ liệu không linh hoạt. Với những câu hỏi nghiệp vụ phức tạp việc truy vấn
là rất khó khăn và thời gian xử lý chậm.
- Dữ liệu dùng cho hệ thống báo cáo sản lượng là dữ liệu nghiệp vụ chưa qua
xử lý, còn dư thừa nhiều, không phù hợp với một hệ thống báo cáo và phân
tích số liệu.
Trong những năm gần đây, kho dữ liệu được phát triển và sử dụng nhiều trong các
hệ thống phân tích số liệu. Với những ưu thế có thể lưu trữ dữ liệu lớn , có khả năng
khai thác dữ liệu đa chiều và theo chiều sâu , đáp ứng được nhu cầu phân tích số liệu
của các doanh nghiệp. Xuất phát từ nhu cầu thực tiễn tại Công Ty Cổ Phần Truyền
Thông VMG, đồ án sẽ xây dựng kho dữ liệu cho hệ thống quản lý của công ty và xây
dựng các báo cáo phục vụ cho công việc quản lý của công ty.
12
1.2 Dữ liệu của hệ thống .
Dữ liệu báo cáo và thống kê của hệ thống cung cấp dịch vụ giá trị gia tăng bao
gồm dữ liệu lịch sử hoạt động của khách hàng, dữ liệu kế toán, và dữ liệu chăm sóc
khách hàng.
- Dữ liệu lịch sử hoạt động khách hàng : mỗi yêu cầu khách hàng vào hệ thống
sẽ được lưu giữ lại trong cơ sở dữ liệu, nó bao gồm thông tin về dịch vụ sử
dụng, yêu cầu, thời gian, trạng thái của các yêu cầu. Thông thường những dữ
liệu này chỉ dùng để đối soát và thanh toán với các mạng viễn thông , không
được ứng dụng vào các công cụ phân tích theo dõi .Cấu trúc dữ liệu các bảng
bao gồm .
- Dữ liệu kế toán : đây là dữ liệu về các thông tin kế toán bao gồm giá trị của
các dịch vụ, giá thanh toán với các mạng viễn thông, thông tin về các quảng
cáo của các dịch vụ. Dữ liệu này kết hợp với dữ liệu lịch sử hoạt động khách
hàng để thanh toán tiền với các đối tác thuê sử dụng dịch vụ và các mạng viễn
thông. Dữ liệu này cùng với dữ liệu tổng hợp của lịch sử hoạt động khách hàng
còn dùng cho phân tích , thống kê và báo cáo định kỳ.
- Dữ liệu chăm sóc khách hàng: Đây là dữ liệu về thông tin về khách hàng của
trung tâm chăm sóc khách hàng của công ty gồm các cuộc gọi đến trung tâm,
trạng thái khách hàng, thông tin về thắc mắc của khách hàng.
1.3 Mục tiêu và phạm vi của đề tài.
1.3.1 Mục tiêu.
Xây dựng và triển khai kho dữ liệu cho hệ thống báo cáo và thống kê sản lượng
dịch vụ dựa trên kết quả tìm hiểu và phân tích hệ thống nguồn tại công ty Cổ Phần và
Truyền Thông VMG đang sử dụng nhằm hỗ trợ các phòng ban , lãnh đạo công ty đưa
ra các quyết định nhanh chóng và chính xác. Xây dựng cơ sở dữ liệu hoàn chỉnh cho
kho dữ liệu, ánh xạ dữ liệu từ hệ thống nguồn vào kho dữ liệu, xây dựng các báo cáo
và công cụ tra cứu báo cáo .
13
1.3.2 Phạm vi của đề tài.
Việc xây dựng kho dữ liệu là một quá trình lâu dài phức tạp và bao gồm nhiều
công đoạn . Trong phạm vi đồ án này, dữ liệu xây dựng chỉ tập trung vào dữ liệu
khách hàng, thông tin chăm sóc khách hàng và dữ liệu kế toán . Đồ án này sẽ tập
trung vào xây dựng kho dữ liệu từ các hệ thống nguồn nói trên sau đó sử dụng công
cụ SQL Server Analysis Service để định nghĩa lên các khối dữ liệu đa chiều cuối
cùng sử dụng công cụ SQL Server Reporting Service để tạo ra các báo cáo và xuất ra
ứng dụng cho người dùng xem .
1.4 Công cụ thực hiện
1.4.1 Hệ quản trị cơ sở dữ liệu cho kho dữ liệu .
Trong những năm gần đây, Microsoft SQL Server là một hệ quản trị cơ sở dữ liệu
thông dụng với nhiều ưu điểm: Công cụ quản lý mạnh mẽ, công cụ phát triển đa dạng,
khả năng mở rộng tốt, phù hợp với các doanh nghiệp trung bình. Chính vì thế đồ án sẽ
sử dụng SQL Server 2005 làm công cụ quản lý kho dữ liệu.
1.4.2 Công cụ xây dựng kho dữ liệu.
Tiến trình ETL sẽ được xây dựng bằng ngôn ngữ truy vấn T-SQL của MSSQL hỗ
trợ cùng với công cụ SQL Server Business Intelligent và dịch vụ SQL Server
Intergration Service. Thông qua tiến trình ETL dữ liệu được đưa từ dữ liệu nguồn đến
kho dữ liệu được xây dựng. Sau đó sử dụng dịch vụ SQL Server Analysis Service để
xây dựng lên các khối dữ liệu đa chiều(cubes) phục vụ phân tích .
1.4.3 Công cụ xây dựng báo cáo.
Sử dụng dịch vụ SQL Server reporting Services và công cụ cụ SQL Server
Business Intelligent để xây dựng và quản lý các báo cáo, đưa báo cáo lên web server
sử dụng IIS(Internet Information System) để người dùng có thể tra cứu qua web.
14
CHƯƠNG 2
TỔNG QUAN VỀ DATA WAREHOUSE
Tóm lược nội dung:
Nội dung chính của chương này là trình bày tổng quan về data warehouse gồm:
định nghĩa, đặc tính,mô hình, kiến trúc và xu hướng tương lai của data
warehouse.
2.1 Định nghĩa kho dữ liệu.
Định nghĩa do W.H.Inmon đề xướng : DWH là tập hợp dữ liệu tương đối ổn định
(không hay thay đổi),cập nhật theo thời gian, được tích hợp theo hướng chủ đề nhằm hỗ
trợ quá trình tạo quyết định về mặt quản lý.[1]
2.2 Các đặc trưng của kho dữ liệu
2.2.1 Hướng chủ đề .
Hướng chủ để có nghĩa là kho dữ liệu được tổ chức xung quanh các chủ đề chính
như khách hàng, sản phẩm, sản xuất . Tập trung vào việc mô hình hóa và phân tích dữ
liệu cho các nhà ra quyết định mà không tập trung vào các xử lý thông thường. Cung cấp
cho người dùng một khung nhìn toàn vẹn, đơn giản và đầy đủ về các sự kiện quanh các
chủ đề.
2.2.2 Tính tích hợp
Dữ liệu trong kho dữ liệu được xây dựng bằng cách tổng hợp dữ liệu từ nhiều nguồn
khác nhau và các nguồn có tổ chức khác nhau : Cơ sở dữ liệu, các file excel, các flat file
hoặc các raw file. Khi đưa vào kho dữ liệu , các dữ liệu được làm sạch và tích hợp dữ liệu
nhằm đảm bảo tính nhất quán của dữ liệu.
2.2.3 Tính bền vững:
Dữ liệu trong kho dữ liệu được chuyển đổi từ môi trường tác nghiệp và được lưu
trữ trong một thời gian dài, khi dữ liệu được chuyển đổi vào đây thì các thao tác cập nhật
và xóa dữ liệu thường không xảy ra. Dữ liệu trong kho dữ liệu chỉ có hai thao tác: Chèn
mới và đọc dữ liệu.
15
2.2.4 Gắn với thời gian .
Phạm vi về thời gian của dữ liệu được lưu trữ trong kho dữ liệu dài hơn so với các
hệ thống tác nghiệp, nếu như dữ liệu tác nghiệp chỉ có giá trị hiện thời kho dữ liệu cung
cấp thông tin lịch sử lâu dài vì thế nó cung cấp một cái nhìn đầy đủ và nhiều thông tin
hơn. Trong kho dữ liệu thời gian được lưu trữ như một thành phần của khóa chính để
đảm bảo tính duy nhất của dữ liệu và cung cấp một đặc trưng thời gian của dữ liệu. Dữ
liệu trong kho luôn gắn với một giá trị thời gian nhất định
2.2.5 Dữ liệu tổng hợp :
Dữ liệu được tích hợp vào các bảng tổng hợp trong kho dữ liệu nhằm phục vụ cho
các mục đích xử lý và phân tích. Ngoài ra còn có các bảng ghi dữ liệu chi tiết các sự kiện
nhằm cung cấp các thông tin chi tiết .
2.3 Kiến trúc của kho dữ liệu
Mô hình kiến trúc của kho dữ liệu cơ bản gồm có ba thành phần : Dữ liệu nguồn, khu
vực xử lý và kho dữ liệu .
Hình 2.1 Kiến trúc kho dữ liệu
2.3.1 Nguồn dữ liệu .
Nguồn dữ liệu của kho dữ liệu bao gồm từ rất nhiều nguồn khác nhau và có cấu trúc
dữ liệu khác nhau:
16
- Dữ liệu từ hệ thống tác nghiệp: Đây là nguồn dữ liệu chính để xây dựng kho dữ
liệu, chứa các dữ liệu chi tiết hiện tại của hệ thống tác nghiệp.
- Dữ liệu từ hệ thống phân tích : Đây là dữ liệu được tổng hợp từ dữ liệu nguồn đã
cũ và tổ chức lại theo nhiều phương pháp khác nhau.
- Dữ liệu từ bên ngoài: đây là các dữ liệu từ các nguồn ngoài hệ thống của công ty,
có thể do các tổ chức khác thu thập và tạo ra, nó được sử dụng cho các yêu cầu phân
tích dữ liệu.
Dữ liệu từ các hệ thống nguồn thường hỗn tạp và chứa nhiều cấu trúc khác nhau ví
dụ: các cơ sở dữ liệu, từ các file excel, các file thô, hay dạng XML... Vì thế trước khi đưa
vào kho dữ liệu cần phải chuyển đổi và tích hợp dữ liệu.
2.3.2 Khu vực xử lý .
Ở khu vực này dữ liệu được sử dụng các kỹ thuật làm sạch và chuyển đổi để đảm
bảo tính nhất quán dữ liệu trước khi đưa vào kho dữ liệu đích. Thông thường người ta sử
dụng các công cụ trích xuất, chuyển đổi và nạp dữ liệu (ETL). Công cụ này thực hiện các
thao tác trích xuất dữ liệu, chuyển đổi dữ liệu , tải dữ liệu vào kho dữ liệu.
2.3.2.1 Nhiệm vụ :
- Làm sạch dữ liệu vào : Đây là quá trình kiểm tra dữ liệu đầu vào và loại bỏ các dữ
liệu sai định dạng hoặc lỗi. Nhiệm vụ của bước này bao gồm.
Sử dụng các luật về dữ liệu (Data Quality rules) để kiểm tra dữ liệu đầu vào.
Chỉnh sửa lỗi dữ liệu.
Cảnh báo về lỗi dữ liệu đầu vào.
- Chuyển đổi dữ liệu : Đây là quá trình chuyển đổi dữ liệu nhằm đảm bảo tính nhất
quán trước khi chuyển vào kho dữ liệu. Quá trình này bao gồm các bước.
Sử dụng các luật về chuyển đổi dữ liệu để chuyển đồi.
Chuyển đổi kiểu dữ liệu cho phù hợp với cơ sở dữ liệu đích
Chuyển đổi dữ liệu vào một lược đồ nhất quán.
2.3.2.2 Các bước :Tiến trình ETL gồm có 3 bước.
- Trích xuất: Dữ liệu nguồn từ rất nhiều nguồn khác nhau và có thể có rất nhiều
cấu trúc dữ liệu khác nhau như nhiều loại cơ sở dữ liệu, từ file excel hay từ file
17
thô. Vì thế nhiệm vụ chính của bước này là trích xuất dữ liệu từ hệ thống nguồn
để xử lý.
- Chuyển đổi : Đây là quá trình rất phức tạp dùng để chuyển đổi dữ liệu nguồn
một mô hình khác phù hợp và chuyển vào cơ sở dữ liệu đích. Ở bước này sẽ phải
sử dụng các phép chuyển đổi như:
Chọn các cột dữ liệu phù hợp (chỉ chọn các cột cần thiết )
Chuyển đổi dữ liệu. Ví dụ : chuyển 1 thành Nam hay ngược lại.
Tạo ra các cột tính toán mới . Ví dụ: Điểm trung bình = Tổng điểm /số trình
Lọc dữ liệu.
Sắp xếp dữ liệu
Thực hiện các phép tổng hợp (tính tổng các cột, đếm số dòng, tính trung bình).
Tạo ra các giá trị mới (tạo khóa tự tăng ).
Tìm kiếm hay so sánh dữ liệu.
Có thể nói đây là bước quan trọng nhất trong tiến trình ETL , nó thực hiện hầu
hết các nhiệm vụ của tiến trình ETL.
- Nạp dữ liệu vào kho dữ liệu: Đây là quá trình đẩy dữ liệu sau khi đã được
chuyển đổi vào kho dữ liệu. Dữ liệu sau khi đã được chuyển đổi sẽ được nạp
vào kho dữ liệu.
2.3.2.3 Các kiểu kiến trúc ETL
Có 3 kiểu kiến trúc ETL chính đó là kiểu push, kiểu pull, kiể server trung gian
- Kiểu push: Trong kiến trúc này tiến trình ETL sẽ được chạy tại server chứa
nguồn dữ liệu . Mỗi khi cập nhật dữ liệu mới tiến trình ETL sẽ xử lý tại nguồn
dữ liệu sau đó đẩy dữ liệu mới đã được xử lý cho kho dữ liệu. Mô hình này
thường được sử dụng nếu nguồn dữ liệu là từ một server và máy nguồn đủ mạnh
để xử lý tiến trình ETL. Thông thường mô hình này sử dụng khi dữ liệu nguồn
không quá phức tạp và khối lượng dữ liệu không quá lớn.
18
Hình 2.2 tiến trình ETL nằm ở nguồn dữ liệu
- Kiểu pull : Với kiến trúc này tiến trình ETL sẽ được chạy ở server chứa kho dữ
liệu . Mỗi khi cập nhật dữ liệu tiến trình này sẽ kết nối tới các nguồn dữ liệu và
lấy dữ liệu về xử lý sau đó nạp vào kho dữ liệu. Ở kiến trúc này dữ liệu nguồn có
thể từ nhiều nơi khác nhau, tuy nhiên máy chứa kho dữ liệu cần phải có đủ năng
lực xử lý tiến trình ETL. Cũng như kiển push kiểu kiến trúc này cũng được sử
dụng khi khối lượng dữ liệu và khối lượng thao tác không quá lớn.
Hình 2.3 Tiến trình ETL nằm ở server chứa kho dữ liệu
- Kiểu server trung gian: Đây là kiến trúc mày tiến trình ETL sẽ được chạy trên
một máy độc lập với cả kho dữ liệu và nguồn dữ liệu. Tiến trình sẽ đến lấy dữ
liệu từ nguồn dữ liệu sau đó xử lý và nạp vào kho dữ liệu. Kiểu kiến trúc này
thường được áp dụng cho các kho dữ liệu lớn, ở đây tiến trình ETL sẽ được chạy
trên một máy độc lập đủ năng lực xử lý .
19
Hình 2.4 Tiến trình ETL nằm ở server trung gian
2.3.3 Kho dữ liệu .
Kho dữ liệu là cơ sở dữ liệu được tổ chức lại theo mô hình hình sao hay mô hình
bông tuyết. Mô hình được phi chuẩn hóa, chấp nhận sự dư thừa dữ liệu trong lưu trữ dữ
liệu chính vì thế mô hình dữ liệu đơn giản hơn nên việc truy vấn dễ dàng hơn và tốc độ
xử lý cũng nhanh hơn mô hình dữ liệu được chuẩn hóa. Ngoài ra kho dữ liệu còn chứa
các dữ liệu khác như.
- Siêu dữ liệu: Đây là dữ liệu chứa định nghĩa của dữ liệu được lưu trữ trong kho dữ
liệu. Siêu dữ liệu định nghĩa nên các thành phần của kho dữ liệu, cách thức dữ liệu
được tải vào kho dữ liệu, lưu lại quá trình hoạt động của kho dữ liệu. Siêu dữ liệu
gồm có các dạng sau:
o Dữ liệu định nghĩa và cách thức ánh xạ dữ liệu vào các bảng trong kho dữ liệu.
o Dữ liệu định nghĩa và giải thích cấu trúc của các bảng bên trong kho dữ liệu.
o Dữ liệu định nghĩa cấu trúc dữ liệu ở hệ thống nguồn.
o Dữ liệu định nghĩa và chú thích về tiến trình ETL.
o Dữ liệu định nghĩa các luật về chất lượng dữ liệu , các mức độ sai lệch của dữ liệu
và cách thức xử lý.
o Dữ liệu theo dõi tiến trình xử lý các bản ghi trong kho dữ liệu.
o Dữ liệu chứa các sự kiện hoạt động của các ứng dụng.
20
- Bảng sự kiện tổng hợp : Các bảng tổng hợp này lưu dữ các dữ liệu tính toán được
nhằm trả lời một cách nhanh nhất các câu hỏi của người dùng đưa ra. Đây là dữ liệu
có thể tính toán được từ các bảng khác tuy nhiên để tăng tốc độ xử lý dữ liệu này
được lưu trữ để không phải tính toán lại mỗi khi có truy vấn.
2.4 Mô hình logic của kho dữ liệu
2.4.1 Lược đồ hình sao
Trong mô hình dữ liệu này,phạm vi dữ liệu được tổ chức trong các bảng chiều, mỗi
chiều ứng với một đặc trưng của dữ liệu ( khách hàng, sản phẩm , bán hàng, thời gian…),
các bảng sự kiện biểu diễn các sự kiện xảy ra và các thông tin chi tiết về các sự kiện đó .
Ưu điểm của mô hình này bao gồm.
- Trực quan , đơn giản phù hợp với cách nhìn nhận về dữ liệu của người sử dụng.
- Dễ dàng truy vấn, hỗ trợ đa dạng các loại truy vấn.
- Sự phi chuẩn hóa đã tránh được việc phải nối nhiều bảng lại trong quá trình xử lý
điều này làm tăng tốc độ truy vấn và việc lưu trữ các cột tổng hợp có tác dụng
làm tăng tốc độ xử lý truy vấn.
Hình 2.4 Lược đồ hình sao.
2.4.2 Lược đồ hình bông tuyết.
Chiều
Sản
phẩm
Bảng
sự kiện
bán
hàng
Chiều
cửa
hàng
Chiều
khách
hàng
Chiều
thời
gian
21
Đây là mô hình tương tự mô hình sao tuy nhiên nó mở rộng hơn mô hình sao ,
trong mô hình này một chiều của dữ liệu có thể gồm nhiều bảng, và trong đó có 1 bảng
sự kiện , bảng sự kiện này chính là một chiều trong mô hình lớn hơn.
Hình 2.5 lược đồ hình bông tuyết.
2.4.3 Mô hình dữ liệu nhiều chiều
Đây là mô hình chức dữ liệu xoay quanh các chủ đề nhằm trả lời một cách nhanh
nhất các câu hỏi trong nghiệp vụ của người quản lý. Có thể nhìn dữ liệu được tổ chức như
là một khối , trong đó mỗi chiều là một chủ đề trong nghiệp vụ .
Hình 2.6 Mô hình dữ liệu nhiều chiều
Ở hình trên, khối dữ liệu gồm có 3 chiều : khách hàng, sản phẩm , thời gian. Mỗi ô
trong đó là một bản ghi được lưu giữ trong bảng sự kiện. Với mô hình này người dùng
Chiều thời
gian
Cửa hàng
phân phối
Chiều sản
phẩm
Chiều
khách
hàng
Bảng sự
kiện bán
hàng
Loại
sản
phẩm
22
có thể dễ dàng đặt ra các câu hỏi theo các tiêu chí khác nhau, việc trả lời truy vấn cũng dễ
dàng hơn và tốc độ xử lý nhanh hơn tổ chức theo mô hình bảng quan hệ.
2.5 Ứng Dụng của kho dữ liệu.
Ngày nay, kho dữ liệu được triển khai trong các doanh nghiệp với nhiều mục đích
khác nhau như tạo các báo cáo tổng hợp, tích hợp dữ liệu,quản trị doanh nghiệp thông
minh(Business Intelligence) , quản lý quan hệ khách hàng, khai phá dữ liệu. [2]
2.5.1 Quản trị doanh nghiệp thông minh (Busines Intelligence).
Kho dữ liệu ngày nay được sử dụng cho việc quản trị doanh nghiệp thông minh , nó
giúp người quản lý có thể hiểu tổng quan và đầy đủ về công việc kinh doanh của doanh
nghiệp hơn. Thông qua các loại báo cáo tổng hợp, các kỹ thuật phân tích dữ liệu từ kho
dữ liệu người quản lý có thể đưa ra các quyết định một cách nhanh chóng và hợp lý.
Ngày càng nhiều các doanh nghiệp xây dựng hệ thống quản trị doanh nghiệp thông minh
để giúp cho họ xử lý các thông tin nhằm hiểu rõ hơn về công việc kinh doanh, hỗ trợ
việc ra các quyết định chính xác hơn, nâng cao chất lượng kinh doanh và dịch vụ. Kho
dữ có thể trích xuất thông tin từ một nguồn dữ liệu rất lớn vì thế nên thông tin nó đưa ra
có cái nhìn tổng quan và đầy đủ hơn các hệ thống thông thường.
2.5.2 Quản lý mối quan hệ khách hàng.
Hệ thống quản lý quan hệ khách hàng bao gồm các ứng dụng hỗ trợ quản lý mối
quan hệ khách hàng. Ứng dụng của kho dữ liệu vào hệ thống này bao gồm.
- Đồng nhất khách hàng: cung cấp một cái nhìn tổng thể về khách hàng
- Quản lý việc cho phép .
- Phân đoạn khách hàng theo các nhóm tiêu chí.
- Hỗ trợ khách hàng .
- Phân tích khách hàng: kho dữ liệu cung cấp đầy đủ thông tin cho các ứng dụng
phân tích khách hàng.
2.5.3 Khai phá dữ liệu .
Khai phá dữ liệu là quá trình đi tìm kiếm các thông tin tiềm ẩn có giá trị trong các
khối dữ liệu lớn. Công cụ khai phá dữ liệu có thể phát hiện các thông tin mang tính dự
đoán, hay các thông tin hỗ trợ cho việc ra quyết định của người quản lý doanh nghiệp.
Kho dữ liệu được sử dụng cho các ứng dụng khai phá bởi vì những lý do sau
23
- Dữ liệu trong nó đã được làm sạch có cấu trúc,
- Kho dữ liệu có siêu dữ liệu định nghĩa về dữ liệu.
- Dữ liệu trong kho dữ liệu đã được tích hợp sẵn.
- Dữ liệu có tính bền vững.
- Việc phân cấp dữ liệu trong các chiều thích hợp với các thuật toán khai phá dữ liệu.
Ngày nay hầu hết các ứng dụng khai phá dữ liệu đều sử dụng kho dữ liệu làm nguồn dữ
liệu để khai phá.
2.5.4 Quản lý dữ liệu chủ .
Dữ liệu chủ hay master data là dữ liệu bao gồm các thực thể mô tả các sự kiện xảy
ra . Dữ liệu chủ có thể trả lời đầy đủ các câu hỏi xung quanh sự kiện xảy ra .
Ví dụ: trong việc kinh doanh có sự kiện khách hàng mua một sản phẩm, thì dữ liệu chủ ở
đây là khách hàng, sản phẩm, nhãn hiệu.
Việc quản lý dữ liệu chủ ở đây là quá trình trích xuất, làm sạch, lưu trữ , cập nhật
và phân phối dữ liệu chủ. Hệ thống quản lý dữ liệu chủ khôi phục dữ liệu chủ từ một hệ
thống xử lý giao dịch trực tuyến. Việc quản lý dữ liệu chủ vì hai mục đích sau.
- Nếu dữ liệu chủ được làm sạch và rõ ràng thì việc quản lý và bảo trì kho dữ
liệu dễ dàng hơn.
- Việc tích hợp dữ liệu vào kho dữ liệu sẽ dễ dàng hơn và nhanh chóng hơn.
2.5.5 Tích hợp dữ liệu khách hàng.
Đây là quá trình trích xuất, làm sạch, lưu trữ và phân phối dữ liệu về khách hàng. Hệ
thống tích hợp dữ liệu khách hàng trích xuất dữ liệu từ hệ thống xử lý giao dịch trực
tuyến làm sạch nó và chuyển nó vào trong kho dữ liệu khách hàng.
Hệ thống tích hợp dữ liệu khách hàng có thể cho dữ liệu về khách hàng sạch hơn,
duy nhất và đáng tin hơn các ứng dụng khác trong doanh nghiệp điều này tăng tính tin
cậy cho các ứng dụng về quản lý khách hàng.
2.6 Xu hướng tương lai của kho dữ liệu
Trong tương lai xu hướng phát triển của kho dữ liệu bao gồm : quản lý dữ liệu phi
cấu trúc, tìm kiếm dữ liêu, kiến trúc hướng dịch vụ và kho dữ liệu thời gian thực [3]
24
2.6.1 Dữ liệu phi cấu trúc.
Ngày nay dữ liệu thường dùng được lưu trữ trong các hệ quản trị cơ sở dữ liệu , các
dữ liệu được lưu trong các hàng và các cột , điều này có nghĩa là cấu trúc dữ liệu đã được
định nghĩa sẵn. Tuy nhiên với một số loại dữ liệu như text, hình ảnh, âm thanh, email…
thì không có cấu trúc định sẵn. Chính vì thế việc lưu trữ dữ liệu phi cấu trúc cho phép
người dùng lưu trữ, quản lý và phân loại các dữ liệu phi cấu trúc theo các các thuộc tính
vật lý riêng.
2.6.2 Tìm kiếm.
Việc lưu trữ các dữ liệu phi cấu trúc đòi hỏi một yêu cầu quan trọng đó là tìm kiếm
dữ liệu. Việc tìm kiếm ở đây là tìm kiếm thông tin bên trong các dữ liệu phi cấu trúc
được lưu trữ . Ví dụ: tìm kiếm các từ bên trong email, web… Các công cụ tìm kiếm phi
cấu trúc phân loại dữ liệu theo các thuộc tính của nó và đánh chỉ mục cho dữ liệu , khi
cần tìm kiếm thông tin công cụ tìm kiếm sẽ duyệt các chỉ mục, tìm kiếm các thông tin và
hiển thị ra kết quả. Ngày nay tìm kiếm đang là xu hướng của kho dữ liệu vì ngày càng
nhiều dữ liệu phi cấu trúc được lưu trữ và nhu cầu tìm kiếm thông tin trên dữ liệu phi cấu
trúc là rất cần thiết.
2.6.3 Kiến trúc hướng dịch vụ.
Kiến trúc hướng dịch vụ (Service- Oriented Architecture - SOA) là hướng tiếp cận
mới trong thiết kế và tích hợp các phần mềm , chức năng, hệ thống theo dạng module
trong đó mỗi module đóng vai trò là một dịch vụ, mỗi module đều có thể truy nhập qua
môi trường mạng. Xây dựng kho dữ liệu theo kiến trúc hướng dịch vụ có nghĩa là phân
tích các thành phần của kho dữ liệu (ETL, hệ thống báo cáo, dữ liệu hướng chủ đề…)
thành các thành phần nhỏ hơn và độc lập với nhau giao tiếp với nhau bằng các dịch vụ
riêng. Điều này cho phép người phát triển có thể thay thế các thành phần trong kho dữ
liệu mà không làm thay đổi đến các thành phần khác.
2.6.4 Kho dữ liệu thời gian thực.
Ngày nay, các kho dữ liệu được cập nhật theo chu kỳ , thời gian giữa các chu kỳ là
rất dài, sở dĩ có việc này là do việc cập nhất vào kho dữ liệu theo các lô, mỗi lần cập nhật
có khối lượng xử lý rất lớn. Do nhu cầu của việc kinh doanh người dùng cần có được sự
cập nhật thông tin một cách nhanh chóng. Vì thế trong tương lai kho dữ liệu sẽ được cập
nhật theo thời gian thực.
25
CHƯƠNG 3
TỔNG QUAN VỀ SQL SERVER 2005
Tóm lược nội dung : Mục tiêu chính của chương này nhằm giới thiệu về các
công cụ sẽ được sử dụng để xây dựng kho dữ liệu. Hệ quản trị cơ sở dữ liệu Microsoft
SQL Server 2005 , dịch vụ Sql Server Analysis Service , Ngôn ngữ truy vấn MDX trên
cơ sở dữ liệu đa chiều, dịch vụ Sql Server Reporting Service.
3.1 Tổng quan về hệ quản trị cơ sở dữ liệu Microsoft SQL Server
2005.
Hệ quản trị cơ sở dữ liệu Microsoft SQL Server (MSSQL) là một trong những
hệ quản trị cơ sở dữ liệu thông dụng hiện nay. Đây là hệ quản trị cơ sở dữ liệu thường
được sử dụng với các hệ thống trung bình, với ưu điểm có các công cụ quản lý mạnh
mẽ giúp cho việc quản lý và bảo trì hệ thống dễ dàng , hỗ trợ nhiều phương pháp lưu
trữ, phân vùng và đánh chỉ mục phục vụ cho việc tối ưu hóa hiệu năng . Với phiên
bản MSSQL 2005 Microsoft đã có những cải tiến đáng kể nâng cao hiệu năng, tính
sẵn sàng của hệ thống , khả năng mở rộng và bảo mật . Phiên bản mới này còn cung
cấp nhiều công cụ cho người phát triển ứng dụng được tích hợp với bộ Visual Studio
do Microsoft cung cấp. Dưới đây là mô hình về các dịch vụ của SQL server 2005.
Hình 3.1 Các dịch vụ của SQL Server 2005
26
MSSQL 2005 có 4 dịch vụ lớn : Database Engine,Intergration Service, Reporting
service, Analysis Services. Trong phiên bản MSSQL 2005 này đã có những cải tiến
đáng kể như sau.
• DataBase Engine : được phát triển để thực thi tốt hơn với việc hỗ trợ cả dữ liệu
có cấu trúc và dữ liệu phi cấu trúc( XML).
• Khả năng sẵn sàng của hệ thống được nâng cao hơn vì MSSQL 2005 hỗ trợ các
chức năng : cơ sở dữ liệu gương (Database mirroring), failover clustering ,
snapshots và khôi phục dữ liệu nhanh.
• Việc quản lý chỉ mục được thực hiện song song với việc hoạt động của hệ
thống. Người dùng có thể thêm chỉ mục, xây dựng lại chỉ mục hay xóa một chỉ
mục đi trong khi hệ thống vẫn được sử dụng.
• Chức năng phân vùng dữ liệu được hỗ trợ: Trong phiên bản này người dùng có
thể phân vùng các bảng và chỉ mục cũng như quản lý phân vùng dữ liệu một
cách dễ dàng. Việc hỗ trợ phân vùng dữ liệu giúp nâng cao hiệu năng hoạt
động của hệ thống.
• Dịch vụ đồng bộ hóa dữ liệu được mở rộng với việc hỗ trợ mô hình đồng bộ
hóa ngang hàng. Đây là dịch giúp đồng bộ hóa dữ liệu giữa các máy chủ dữ
liệu, dịch vụ này làm khả năng mở rộng của hệ thống được nâng cao.
• Dịch vụ tích hợp (Integration Service ) thiết kế lại cho phép người dùng tích
hợp dữ liệu và phân tích dữ liệu từ nhiều nguồn khác nhau. Hỗ trợ việc quản lý
chất lượng dữ liệu và làm sạch dữ liệu, một công việc quan trọng trong tiến
trình ETL.
• Dịch vụ phân tích dữ liệu (Analysis Service ): cung cấp khung nhìn tích hợp và
thống nhất về dữ liệu cho người dùng, hỗ trợ việc phân tích dữ liệu .
• Công cụ khai phá dữ liệu (Data mining ) được tích hợp hỗ trợ nhiều thuật toán
khai phá dữ liệu, điều này hỗ trợ cho việc phân tích và khai phá dữ liệu và xây
dựng các hệ thống hỗ trợ ra quyết định cho người quản lý.
• Dịch vụ xây dựng quản lý báo cáo (Reporting Service) được dựa trên nền tảng
quản trị doanh nghiệp thông minh và được quản lý qua dịch vụ web. Báo cáo
có thể được xây dựng với ngôn ngữ truy vấn MDX. Việc xây dựng báo cáo dễ
dàng thông qua các công cụ trên Business Intelligent, người dùng truy cập báo
27
cáo dễ dàng và trích xuất ra nhiều định dạng khác nhau thông qua trình duyệt
web.
3.2 Tổng quan về SQL Server Integration Service(SSIS).
SSIS là một thành phần của SQL Server, nó được phát triển từ công cụ Data
Transformation Services của phiên bản SQL Server 7.0, một công cụ để thực thi việc
chuyển đổi dữ liệu. SSIS là nền tảng cho việc tích hợp dữ liệu , các chức năng của nó
nhanh và mềm dẻo cho việc phát triển tiến trình ETL cho xây dựng kho dữ liệu ,
ngoài ra SSIS còn cung cấp các công cụ tự động bảo trì và tự động cập nhật dữ liệu
cho cơ sở dữ liệu nhiều chiều và cubes.
SSIS cung cấp một giao diện phát triển với các tool bằng đồ họa cho việc xây dựng
tiến trình. Người phát triển sử dụng công cụ phát triển SQL Server Business
Intelligence Development Studio (BIDS), đây là công cụ dựa trên bộ MicrosoftVisual
Studio . Người dùng có thể kéo và thả các đối tượng của SSIS trong giao diện đồ họa
hay có thể lập trình bằng mã lệnh trong giao diện soạn thảo.
Hình 3.2 Công cụ phát triển SSIS
Các đối tượng của SSIS bao gồm
28
- Các kết nối : chứa đựng những thông tin để kết nối tới nguồn dữ liệu
- Các nhiệm vụ : Đây là một đơn vị thực thi trong SSIS , dùng để thực thi
một nhiệm vụ như: truy vấn, chạy một chương trình ứng dụng , hay thực thi
công việc bảo trì hệ thống.
- Các ràng buộc: Các nhiệm vụ liên kết với nhau bằng các ràng buộc, các
ràng buộc chỉ định nhiệm vụ nào được thực hiện sau khi một nhiệm vụ kết
thúc tùy theo kết quả của nhiệm vụ vừa hoàn thành.
- Các xử lý sự kiện: SSIS cho phép thực thi một số thao tác để xử lý khi có
một sự kiện xảy ra. Ví dụ như việc làm sạch dữ liệu khi có lỗi xảy ra.
- Các biến: các nhiệm vụ có thể liên kết với các biến để lưu trữ kết quả, thực
hiện việc quyết định (như trong ràng buộc, hay ở một nhiệm vụ khác), hay
thực thi một số cấu hình.
SSIS cung cấp công cụ để thiết lập luồng dữ liệu(DataFlow), các thành phần của
luồng dữ liệu dùng để tạo ra tiến trình ETL. DataFlow là thành phần quan trọng nhất
trong một package của SSIS, bao gồm rất nhiều thành phần để thiết lập việc trích
xuất, biến đổi dữ liệu, và nạp dữ liệu vào kho dữ liệu. Đây là công cụ rất mạnh cho
việc xây dựng tiến trình ETL.
3.3 Tổng quan về SQL Server Analysis Service .
SSAS trong là một trong những dịch vụ chính của SQL Server 2005 dùng để xây
dựng các chiều và cubes cho DWH, trong phiên bản mới này còn hỗ trợ một số thuật
toán khai phá dữ liệu điều này cung cấp cho người quản lý có cái nhìn sâu sắc về dữ
liệu của họ hơn. SSAS là một phần của nền tảng quản lý doanh nghiệp thông minh
(BI), nó không chỉ là một thành phần của SQL Server, nó còn được sử dụng trên
.NET Framework và môi trường phát triển Visual Studio.
SSAS trong SQL Server 2005 đã được tái kiến trúc nhằm nâng cao khả năng
mở rộng và tính tin cậy, trong môi trường doanh nghiệp, và khả năng bảo mật dữ
liệu. SSAS cung cấp khả năng tích hợp nhiều đối tượng (instance) của SSAS điều
này tăng khả năng mở rộng ngoài ra dịch vụ này còn cung cấp các thuật toán để quản
lý hiệu quả các cubes lớn trong một đối tượng. SSAS 2005 cung cấp đa dạng các công
cụ để tạo OLAP (OnLine Analytical Processing) một cách hiệu quả và quản lý dễ
dàng.
29
Hình 3.3 Kiến trúc của SSAS
Trong phiên bản mới này SSAS hỗ trợ XML theo chuẩn XML/A. Điều này có
nghĩa việc tra đổi dữ liệu giữa SSAS với các client là XML, sự thay đổi này nâng
cao khả năng tương tác giữa các máy client và máy chủ. Như ở hình 3.3 SSAS cung
cấp ba kiểu kết nối với client. Việc lưu trữ siêu dữ liệu trong cũng được thực hiện
dưới dạng XML. Ngoài ra trong phiên bản này còn cho phép người dùng tùy chọn
việc lưu trữ dữ liệu và dữ liệu tổng hợp dưới dạng đối tượng của SSAS hay dạng
cơ sở dữ liệu quan hệ. Việc lưu trữ dữ liệu theo định dạng đối tượng của SSAS có
30
thể xử lý tốt hơn và truy vấn nhanh hơn dạng cơ sở dữ liệu quan hệ. Có 3 cách lưu
trữ dữ liệu chính trong SSAS.
- MOLAP(MultiDemension OnLine Analytical Processing) Đây là mô hình lưu
trữ mà dữ liệu theo định dạng của SSAS. Cách lưu giữ này cho hiệu quả truy vấn
tốt nhất và có thể xử lý các tính toán phức tạp. Điểm yếu của cách truy vấn này
là tốn dung lượng và không thể xem được dữ liệu mới cho đến khi xây dựng lại
cubes.
- ROLAP(Relational OLAP) đây là cách lưu trữ mà dữ liệu chính được lưu trữ
trong cơ sở dữ liệu quan hệ. Cách truy vấn trên SSAS được thay đổi sang kiểu
truy vấn trên cơ sở dữ liệu quan hệ mỗi khi thực thi điều này làm giảm hiệu
năng của truy vấn, các truy vấn thường rất chậm so với mô hình trên. Điểm
mạnh của cách lưu trữ này là dung lượng cube chỉ giới hạn bởi dung lượng của
cơ sở dữ liệu quan hệ.
- HOLAP (Hybrid OLAP) : Đây là mô hình tích hợp của cả hai mô hình trên dữ
liệu thông thường được lưu trữ dưới dạng cơ sở dữ liệu quan hệ trong khi các dữ
liệu tổng hợp được lưu trữ dưới dạng đối tượng SSAS. Nếu dữ liệu yêu cầu là
dạng tổng hợp thì sẽ thực hiện truy vấn tại SSAS còn nếu dữ liệu yêu cầu là dạng
chi tiết truy vấn sẽ được dịch và truy vấn tại cơ sở dữ liệu quan hệ. Điều này làm
tăng tốc độ xử lý của mô hình ROLAP và tận dụng được khả năng lưu trữ của
mô hình ROLAP.
Dịch vụ SSAS của SQL Server 2005 cung cấp cho người dùng các tính năng mạnh
mẽ trong phân tích dữ liệu. Đây là công cụ mạnh để xây dựng các hệ thống xử lý
giao dịch trực tuyến.
3.4 Tổng quan về ngôn ngữ truy vấn MDX.
Ngôn ngữ MDX(MultiDemensional eXpression ) là ngôn ngữ truy vấn cho cơ
sở dữ liệu nhiều chiều, nó tương tự ngôn ngữ SQL cho cơ sở dữ liệu dạng quan hệ ,
tuy nhiên đây là ngôn ngữ tính toán vì thế nó tương có cú pháp giống công thức của
bảng tính. MDX do Microsoft giới thiệu vào năm 1997 cùng với SQL Server 7.0
nhanh chóng được các nhà phát triển chấp nhận đã trở thành chuẩn cho hệ thống
OLAP. Từ năm 2001 khi XMLA ra đời MDX được mở rộng và hỗ trợ truy vấn với
MDX (MDXML).
31
Ngôn ngữ MDX hỗ trợ mạnh cho tính toán trên khối dữ liệu nhiều chiều, nó hỗ
trợ việc truy cập dữ liệu một cách trực quan và dễ dàng. Người dùng có thể trích xuất
dữ liệu từ cube với số chiều bất kỳ. MDX có thể trả lời được các câu hỏi phức tạp
trong kinh doanh ở thế giới thực như: trong các khu vực bán được nhiều sản phẩm
nhất đâu là dòng sản phẩm bán chạy nhất? .
MDX được xây dựng cho các hệ thống phân tích dữ liệu chính vì thế nó có thể
xử lý được những truy vấn một cách dễ dàng. MDX có thể xử lý dữ liệu một cách
mềm dẻo, kết quả trả về của MDX cũng rất linh hoạt. Các phép truy vấn phức tạp
trong SQL như pivot được sử dụng một cách dễ dàng trong MDX.
MDX không hỗ trợ các ngôn ngữ định nghĩa dữ liệu (DDL) tuy nhiên ngôn
ngữ thao tác dữ liệu (DML) của MDX có hỗ trợ thực thi một số thao tác định nghĩa dữ
liệu.
Cấu trúc của MDX giống như SQL nhưng mở rộng hơn để thao tác với cơ sở
dữ liệu nhiều chiều. Câu truy vấn MDX có cấu trúc như sau :
SELECT [Mô tả về chiều thứ nhất],
[Mô tả về chiều thứ hai]…
FROM [Mô tả về khối dữ liệu]
WHERE [điều kiện cắt các lớp]
Mệnh đề SELECT dùng để xác định các chiều cảu tập hợp kết quả.
Mệnh đề FROM xác định nguồn dữ liệu(cube) dùng để lấy dữ liệu
Mệnh đề WHERE dùng để xác định chiều cắt dữ liệu , nhằm lọc dữ liệu đầu ra.
Ví dụ:
SELECT {[Measures].[TongtinTinhtien],
[Measures].[TongtinTinhtien]} ON COLUMNS,
{ [Dim Date].[Full Date].members }ON ROWS
FROM [VMG DWH]
WHERE [Dim Dau So].[Dau So].[8768]
Kết quả trả về như hình 3.4
32
Hình 3.4 Kết quả truy vấn MDX
Truy vấn MDX có thể chứa các thông tin như sau :
- Số lượng chiều (tối đa 128 chiều).
- Các thành viên của mỗi chiềucho từng chiều.
- Tên khối dữ liệu
- Các thành viên từ một chiều dùng để cắt (lọc).
Phát biểu SELECT của câu truy vấn MDX còn hỗ trợ các cú pháp tuỳ chọn khác,
như là từ khóa WITH và việc sử dụng các hàm MDX để xây dựng các thành viên
bằng việc tính toán để thêm vào 1 trục hoặc 1 chiều cắt.
Cú pháp của câu truy vấn MDX tương tự như cú pháp SQL, tuy nhiên, có 1 số
khác biệt như sau :
- Cú pháp MDX phân biệt các tập hợp bằng việc dùng dấu ngoặc nhọn { }
bao quanh các bộ hay thành viên.
- Câu truy vấn MDX có thể chứa tới 128 chiều, nhưng chỉ có 5 chiều đầu tiên
là có aliase (tên phụ). Một trục có thể được tham chiếu bởi thứ tự của nó
trong câu MDX hay bởi tên phụ của nó nếu có.
- Trong câu truy vấn SQL, mệnh đề FROM có thể chỉ đến nhiều bảng dữ liệu.
Tuy nhiên, mệnh đề FROM trong câu truy vấn MDX bị giới hạn ở 1 khối
duy nhất. Thông tin từ các khối khác có thể được tham khảo theo từng giá trị
bằng cách dùng hàm LookupCube.
33
- Mệnh đề WHERE được dùng để mô tả chiều cắt dữ liệu. Nếu 1 chiều
không được đề cập trong mệnh đề WHERE, SQL Analysis Services vẫn
xem nó là 1 chiều cẳt, nhưng được lọc theo số thành viên mặc định của nó.
Mệnh đề WHERE có thể thay đổi tiến trình lọc cho 1 chiều nào đó, giúp
tinh chỉnh dữ liệu kết quả.
3.5 Tổng quan về SQL Server Reporting Services.
SSRS là một dịch vụ của SQL Server , nó là hệ thống quản lý các báo cáo. Hỗ
trợ việc tạo báo cáo, quản lý các báo cáo, và quản lý truy cập thông qua nền tảng web.
SSRS sử dụng ngôn ngữ định nghĩa báo cáo (RDL) và ngôn ngữ đánh dấu mở
rộng XML. Công cụ soạn thảo báo cáo được tích hợp trên công cụ BIDS dựa trên bộ
Visual studio cùng với thành phần Crystal Reports. Người dùng có thể soạn thảo các
báo cáo một cách dễ dàng trên nền tảng đồ họa, sau khi báo cáo được tạo có thể trích
xuất ra nhiều định dạng khác nhau như : Excel, PDF, CSV, XML,TIFF hay dưới
dạng văn bản web.
Người dùng có thể tương tác với máy chủ báo cáo một cách trực tiếp thông qua
dịch vụ web thay vì sử dụng công cụ Report Manager. Với công cụ Report Manager
người dùng có thể xem các báo cáo, quản lý các báo cáo cũng như quản lý và bảo trì
các định nghĩa nguồn dữ liệu được sử dụng cho báo cáo và quản lý bảo mật cho báo
cáo . Các báo cáo có thể được phân phối thông qua mail hoặc các hệ thống file. Việc
quản lý bảo mật được thực thi với nhiều cấp độ việc này giúp quản lý mạnh mẽ và
linh hoạt hơn. Như ở trên hình 3.5 Các thành phần chính của hệ SSRS bao gồm:
- Nguồn dữ liệu: nguồn dữ liệu cho dịch vụ báo cáo bao gồm nhiều loại dữ
liệu như SQL Server , Analysis Service, DB2, Oracle, ADO.Net. SSRS
truy cập nguồn dữ liệu thông qua các trình điều khiển OLE DB hay ODBC.
- Công cụ xuất báo cáo: cho phép người dùng xuất báo cáo ra dạng ngôn
ngữ định dạng báo cáo hoặc ra các định dạng văn bản như : HTML,
XML,PDF, EXCEL,CSL hoặc các định dạng khác.
- Công cụ bảo mật: chuẩn báo mật cho SSRS dựa trên các kiểu bảo mật của
IIS và chứng thực người dùng của windows
34
- Công cụ chuyển phát báo cáo : SSRS cho phép người dùng truy cập báo
cáo qua web hoặc chuyển phát cho người dùng qua email hay dạng file hệ
thống. SSRS rất mềm dẻo trong việc phân phối báo cáo cho người dùng.
Hình 3.5 Kiến trúc của Reporting Service
3.6 Phương pháp xây dựng kho dữ liệu dựa trên các công cụ của
Microsoft SQL Server 2005.
Hình 3.6 biểu diễn phương pháp sử dụng các công cụ của MSSQL 2005 để xây
dựng kho dữ liệu và hệ thống báo cáo cho người dùng .
Nguồn dữ liệu cho kho dữ liệu có thể bao gồm nhiều nguồn khác nhau. Chúng
ta sẽ dùng dịch vụ SSIS để xây dựng tiến trình ETL để lấy dữ liệu từ hệ thống nguồn
và đẩy vào kho dữ liệu.
Dữ liệu trong kho dữ liệu được lưu trữ dưới dạng mô hình cơ sở dữ liệu quan
hệ sẽ được quản lý bởi hệ quản trị cơ sở dữ liệu quan hệ SQL Server. Hoặc sử dụng
dịch vụ SSAS để xây dựng nên OLAP database
35
Cuối cùng ta sẽ dùng các công cụ BI và SSRS để trích xuất dữ liệu để xử lý
hoặc tạo báo cáo cho người dùng xem. Nếu trích xuất dữ liệu từ hệ quản trị cơ sở dữ
liệu quan hệ ta sẽ dùng ngôn ngữ SQL thông thường hoặc dùng MDX để truy vấn trên
cubes.
Hình 3.5 Mô hình xây dựng kho dữ liệu
36
CHƯƠNG 4
PHÂN TÍCH THIẾT KẾ VÀ TRIỂN KHAI KHO DỮ LIỆU
HOẠT ĐỘNG DỊCH VỤ.
Tóm lược nội dung :
Nội dung chính của chương này bao gồm : Tìm hiểu về dữ liệu hệ thống, xác định
yêu cầu đặt ra , thiết kế mô hình kho dữ liệu dựa trên yêu cầu đã phân tích và dữ liệu
hệ thống nguồn, thiết kế tiến trình ETL để chuyển dữ liệu vào hệ thống, sử dụng công
cụ SQL Server Analysis Service để xây dựng các cơ sở dữ liệu nhiều chiều , sử dụng
công cụ SQL Reporting Service để xây dựng các báo cáo.
4.1 Phân tích hệ thống nguồn.
4.1.1 Chức năng thống kê báo cáo và theo dõi lịch sử hoạt động của khách
hàng .
Hệ thống này có chức năng thống kê theo dõi sản lượng các dịch vụ và đầu số
dịch vụ, lịch sử hoạt động của khách hàng, giúp cho người quản lý theo dõi tình hình
kinh doanh của các dịch vụ, phục vụ cho đối soát và thanh toán giữa công ty với các
mạng viễn thông vào cuối tháng.
- Thống kê theo dõi: Hệ thống cung cấp cho người quản lý các báo cáo để có thể
theo dõi sản lượng của các dịch vụ theo các đầu số, mạng viễn thông, nhóm dịch
vụ và thời gian.
- Theo dõi lịch sử hoạt động của khách hàng, và phân tích hàng vi sử dụng dịch vụ
của khách hàng.
- Đối soát với mạng viễn thông : dữ liệu về quá trình hoạt động của khách hàng
được sử dụng để thống kê đối soát giữa công ty với các mạng viễn thông vào cuối
tháng để nhằm mục đích kế toán.
37
- Đối soát với các công ty có thuê sử dụng dịch vụ: dữ liệu về hoạt động của khách
hàng còn được sử dụng cho mục đích đối soát với các công ty thuê đặt các nhóm
dịch vụ.
Dữ liệu cho chức năng này bao gồm : dữ liệu về các dịch vụ, dữ liệu về các mạng
viễn thông, dữ liệu về các đầu số, dữ liệu về lịch sử hoạt động khách hàng.
4.1.2 Quản lý quảng cáo của các dịch vụ.
Hàng ngày công ty đều có quảng cáo về các dịch vụ đăng trên các phương tiện
thông tin đại chúng, việc quản lý quảng cáo của các dịch vụ là cần thiết cho người
quản lý trong việc lựa chọn các dịch vụ và các phương pháp quảng cáo hiệu quả.
Dữ liệu cho chức năng này bao gồm: Dữ liệu về quảng cáo hàng ngày, dữ liệu
về các dịch vụ của công ty, dữ liệu về các nhóm dịch vụ của công ty.
4.2 Thiết kế kho dữ liệu.
Kho dữ liệu được thiết kế gồm 3 kho dữ liệu chủ đề :
- Kho dữ liệu tổng hợp sản lượng dịch vụ.
- Kho dữ liệu quảng cáo và chi phí
- Kho dữ liệu chi tiết hoạt động sử dụng dịch vụ của khách hàng.
4.2.1 Kho dữ liệu chủ đề tổng hợp sản lượng dịch vụ.
Đây là kho dữ liệu lưu giữ tổng hợp về sản lượng của các dịch vụ theo các tiêu
chí : các đầu số, các nhóm dịch vụ , mạng viễn thông trong từng ngày . Các thông tin
sự kiện bao gồm : tổng số yêu cầu, tổng tin đáp ứng, tổng tin đáp ứng vượt, tổng tin
yêu cầu tính tiền, giá tin yêu cầu, giá tin đáp ứng, tổng tiền yêu cầu, doanh thu , lợi
nhuận, thời gian kết nối, tổng thuế, lợi nhuận sau thuế, lợi nhuận trước thuế.
38
Hình 4.1 sơ đồ kho dữ liệu tổng hợp sản lượng dịch vụ
Các chiều bao gồm
• Chiều mã mạng viễn thông : đây là chiều lưu giữ thông tin về mạng viễn
thông.
Tên cột Kiểu Miêu tả Ví dụ
Telco_Key Int Khóa chính, tự tăng 3
mamangvienthong Varchar(10) Mã mạng viễn thông VINA
Tenmang Nvarchar(50) Tên chi tiết Vinaphone
Diachi Nvarchar(50) Địa chỉ liên hệ Hà Nội
TrangThai Bit Trạng thái sử dụng 1
39
Các thông tin về mạng viễn thông được ánh xạ từ bảng tbltelcoInfo trong dữ liệu
nguồn sang .
• Chiều thời gian : đây là chiều cơ bản trong kho dữ liệu, trong kho dữ liệu sản
lượng dịch vụ chiều thời gian tương ứng với ngày tổng hợp sản lượng.
Tên cột Kiểu Miêu tả Ví dụ
Date_key Int Mã thời gian 12
Fulldate Varchar(20) Thời gian đầy đủ 2009-09-12
Sql_Date Datetime Thời gian 2009-12-12
Ngaythuoctuan TinyInt Ngày trong tuần 1
Ngaythuocthang TinyInt Ngày trong tháng 12
NgaythuocQuy TinyInt Ngày thuộc quý 74
NgaythuocNam smallInt Ngày thuộc năm 347
TuanThuocThang TinyInt Tuần thuộc tháng 2
TuanThuocQuy TinyInt Tuần thuộc quý 11
ThangThuocquy TinyInt Tháng thuộc quý 3
ThangThuocNam TinyInt Tháng thuộc năm 12
Quy TinyInt Quý 4
Nam Smallint Năm 2009
LangayTrongTuan Bit Nếu cuối tuần là 0 1
Chiều thời gian có nhiều loại phân cấp theo thuộc tính tư nhiên như :
Năm ->Quý->tháng->tuần->Ngày, hoặc Năm ->tháng->Ngày.
Chiều thời gian được trích xuất và chuyển đổi từ cột datein trong bảng
tblprocessedSMSInfo trong dữ liệu nguồn .
• Chiều mã dịch vụ : Chiều mã dịch vụ lưu trữ thông tin về các dịch vụ của
công ty. Ví dụ như dịch vụ kết quả xổ số, dịch vụ tải nhạc chuông nhạc hình.
40
Tên cột Kiểu Miêu tả Ví dụ
Service_codekey Int Khóa chính, tự tăng 12
Madichvu Varchar(20) Mã dịch vụ SXTD
Nhóm dịch vụ Varchar(20) Mã nhóm dịch vụ ISPACE
Dauso Varchar(20) Mã đầu số sử dụng 8768
NgayBatdau Datetime Ngày bắt đầu sử dụng 2009-12-12
Ngayketthuc DateTime Ngày kết thúc sử dụng 2020-12-12
Tyletinhtien Tinyint Tỷ lệ % công ty được
hưởng
100
MathuocCongty Bit Mã thuộc công ty không 1
Sotoantu TinyInt Số toán tử dùng trong
cú pháp nhắn tin
3
Trangthai Bit Trạng thái sử dụng 1
Chú thích Nvarchar(100) Chú thích về mã Kết quả xổ số
Thông tin về các dịch vụ trong chiều dịch vụ được ánh xạ từ hai bảng :
tblservicecodeInfo và bảng tblserviceInfo trong cơ sở dữ liệu nguồn
• Chiều đầu số : đây là chiều lưu thông tin về các đầu số dịch vụ được sử dụng.
ví dụ như đầu số : 8068, hay đầu số 8768. Các thuộc tính của chiều đầu số bao
gồm.
41
Tên cột Kiểu Miêu tả Ví dụ
Service_Number_Key Int Khóa chính, tự
tăng
12
DauSo Varchar(20) Mã đầu số 8768
NgayBatDau DateTime Ngày bắt đầu sử
dụng
NgayKetThuc DateTime Ngày kết thúc sử
dụng
giatri Int Giá đơn vị 15000
Chuthich Nvarchar(100) Chú thích Đầu số SMS
Thông tin về các đầu số dịch vụ được ánh xạ từ hai bảng
tblserviceNumberinfo và Dauso_Giatien.
• Chiều nhóm dịch vụ
Đây là chiều lưu thông tin về các nhóm dịch vụ được sử dụng, mỗi nhóm dịch
vụ này thuộc sở hữu của một công ty bên ngoài hoặc một trung tâm sản xuất
dịch vụ của công ty .
Tên cột Kiểu Miêu tả Ví dụ
Group_key Int Khóa chính, tự tăng 123
Manhomdichvu Varchar(20) Mã nhóm dịch vụ DHC
Tennhomdichvu Nvarchar(100) Tên đầy đủ Trung tâm
DHC
Tencongty Nvarchar(100) Tên công ty sở hữu VMG
Điachicongty Nvarchar(200) Địa chỉ công ty Hà Nội
Ngaybatdau Datetime Ngày bắt đầu sử dụng 2009-12-01
Ngayketthuc Datetime Ngày kết thúc sử dụng 2020-12-31
Mathuoccongty Bit Là mã thuộc công ty
VMG
1
42
• Bảng sự kiện tổng hợp sản lượng. bảng này lưu thông tin tổng hợp sản lượng
của các dịch vụ. Dữ liệu của bảng này được tổng hợp từ các bảng chiều và
bảng ghi thông tin lịch sử hoạt động khách hàng : tblprocessedSMStoday
trong cơ sở dữ liệu nguồn . Ngoài các thuộc tính là khóa chính tham chiếu từ
các bảng chiều còn có các thuộc tính cơ bản khác của bảng này bao gồm .
Tên cột Kiểu Miêu tả Ví dụ
Tongso_yeucau Int Số yêu cầu trong
ngày
120
Tongtindapung Int Số tin trả lại cho
khách hàng
160
Tongso_Yeucautinhtien int Số yêu cầu tính tiền
thành công
119
Sotintraravuot Int Số tin đáp ứng bị
tính tiền.
23
Giatien_yeucau Int Giá tiền của mỗi tin
yêu cầu(theo VND)
5.000
Tongtien_yeucau Int Số tiền khách hàng
trả
595.000
Giatindapung smallInt Giá tiền cho mỗi tin
đáp ứng bị tính tiền
80
Tongtien_Tindapung Int Chi phí cho tin đáp
ứng.
1840
Loinhuantruocthue Int Lợi nhuận 493.600
Tongthue Int Thuế phải trả 49.360
Loinhuansauthue Int Lợi nhuận sau thuế 444.240
4.2.2 Hệ thống quản lý quảng cáo .
Đây là kho dữ liệu chủ đề lưu giữ thông tin về sự kiên quảng cáo của các dịch
vụ và thông tin về sản lượng của dịch vụ .
43
Hình 4.2 Sơ đồ kho dữ liệu chủ đề quảng cáo và doanh thu
Ba chiều mã dịch vụ, nhóm dịch vụ, thời gian đã nêu ở trên còn có chiều quảng cáo
có cấu trúc như dưới đây.
Tên cột Kiểu Miêu tả Ví dụ
Advertisement_Key Int Khóa chính,
mã tự tăng
12
MaQuangCao Int Mã loại quảng
cáo
23
KieuQuangCao Varchar(50) Tên kiểu
quảng cáo
Bao
44
KieuQuangCao_Chi
tiet
Nvarchar(100) Tên chi tiết Báo – tạp chí
TenCongTy Nvarchar(100) Đơn vị được
thuê đăng
Báo Việt
nam net
diachiconty Nvarchar(100) Địa chỉ đơn vị Hà Nội
ChieuDai Int Chiều dài
quảng cáo(cm)
60
ChieuRong Int Chiều rộng
quảng cáo(cm)
60
MaVitri Int Mã vị trí 12
Vitri_chitiet Nvarchar(100) Vị trí chi tiết Chân trang
ThoiLuong Int Thời lượng
đăng (giây)
0
Thoidiem_dang Datetime Thời điểm
đăng
2009-12-12
Gia Int Giá tiền 1500.000
Dữ liệu cho chiều quảng cáo được lấy từ các bảng thông tin về quảng cáo trong cơ sở
dữ liệu nguồn bao gồm : Quangcao_vitri, quangcao_Loaihinh, quangcao_Kichthuoc,
Quangcao_Donvi, Quangcao_Sukien, Quangcao_Chitiet . Các bảng có mô hình quan
hệ như dưới đây
45
Hình 4.3Mô hình dữ liệu nguồn của chiều quảng cáo.
Bảng sự kiên quảng cáo ngoài các khóa ngoại được tham chiếu từ các bảng chiều còn
có các thuộc tính khác như dưới đây.
Tên cột Kiểu Miêu tả Ví dụ
Soluong Int Số lượng quảng cáo 2
Giadonvi Int Giá của mỗi quảng cáo(
VND )
1.500.000
Thanhtien Int Tổng tiền 3.000.000
Chietkhau Int Chiết khấu 500000
Tienthanhtoan Int Tiền phải thanh toán 2.500.000
Tongthu Int Tổng thu từ dịch vụ 4.000.000
loinhuan Int Lợi nhuận của dịch vụ 1.500.000
Dữ liệu cảu bảng sự kiên quảng cáo được ánh xạ từ các bảng: Quangcao_sukien, các
bảng chiều, và bảng sự kiên của kho dữ liệu chủ đề tổng hợp sản lượng dịch vụ.
46
4.2.3 Kho dữ liệu chủ đề chi tiết sử dụng dịch vụ của khách hàng.
Đây là kho dữ liệu về chi tiết sử dụng dịch vụ của khách hàng , dữ liệu trong
được tổng hợp theo các tiêu chí : khách hàng, dịch vụ, đầu số, mạng viễn thông, thời
gian, nhóm dịch vụ. Đây là kho dữ liệu dùng để phân tích hành vi sử dụng dịch vụ của
khách hàng và quản lý mỗi quan hệ khách hàng.
Mô hình kho dữ liệu chủ đề như sau.
Hình 4.4 Mô hình kho dữ liệu chủ đề chi tiết sử dụng dịch vụ
47
Ngoài các chiều đầu số, mã dịch vụ, thời gian, mạng viễn thông, nhóm dịch vụ đã
được nêu ở các mục trước kho dữ liệu này còn bao gồm chiều khách hàng . Chiều
khách hàng có cấu trúc như sau.
Tên cột Kiểu Miêu tả Ví dụ
Customer_Key Int Khóa chính. 12
SDT_KhachHang Varchar(20) Số điện thoại 041234567
TenKhachHang Nvarchar(100) Tên khách hàng Nguyễn Văn
An
DiaChi_KH Nvarchar(100) Địa chỉ Hà Nội
GioiTinh Bit Giới tính 1
Email Varchar(100) Email annv@gg.com
TrangThaiKhoa Bit Bị khóa không 1
Trong bảng Fact chi tiết dịch vụ , ngoài các khóa ngoại: Customer_Key,
Service_Code_Key, Service_Number_Key , Telco_Key, Date_Key, Group_Key được
tham chiếu từ các bảng chiều, còn các thuộc tính sau.
Tên cột Kiểu Miêu tả Ví dụ
Tinyeucau SmallInt Số tin yêu cầu 3
Tindapung SmallInt Số tin đáp ứng 4
TindapungVuot SmallInt Tin đáp ứng vượt 0
TinYeucauTinhTien SmallInt Số tin yêu cầu tính
tiền thành công
2
Tinyeucausai SmallInt Số tin yêu cầu sai cú
pháp dịch vụ
0
TiensuDung Int Số tiền khách hàng
trả(VND)
30.000
TiendapUng Int Số tiền tin đáp ứng 0
48
4.3 Sử dụng SSIS để xây dựng tiến trình ETL
4.3.1 Mô tả chung .
Dữ liệu cho hệ thống bao gồm từ nhiều nguồn khác nhau : dữ liệu dịch vụ, dữ liệu
hoạt động khách hàng, dữ liệu kế toán. Đồ án sẽ sử dụng công cụ SSIS để ánh xạ dữ
liệu từ hệ thống nguồn vào kho dữ liệu. Sơ đồ hoạt động như hình 4.5.
Hình 4.5 Mô hình ETL
Các bước thực hiện bao gồm : Xây dựng lấy dữ liệu từ nguồn, biến đổi dữ liệu, xây
dựng các ánh xạ dữ liệu, chạy các ánh xạ. Một số ánh xạ sẽ được chạy định kỳ hằng
ngày.
4.3.2 Ánh xạ dữ liệu cho các chiều.
4.3.2.1 Chiều mã dịch vụ.
Dữ liệu của chiều mã dịch vụ được ánh xạ từ hai bảng tblservicecodeInfo và
bảng tblserviceInfo. Dữ liệu hai bảng sau khi được lấy bảng cách nối hai bảng lại với
nhau sẽ được chuyển đổi với định dạng dữ liệu cho phù hợp của bảng chiều mã dịch
vụ tại kho dữ liệu sẽ được ánh xạ lên DimMaDichVu
49
Hình 4.6 Ánh xạ chiều mã dịch vụ
4.3.2.2 Chiều mạng viễn thông
Dữ liệu từ chiều mạng viễn thông được lấy trực tiếp từ bảng tbltelcoinfo
hình 4.7 mô tả sơ đồ ánh xạ dữ liệu của chiều mạng viễn thông.
Hình 4.7 Ánh xạ chiều mạng viễn thông
4.3.2.3 Chiều đầu số
Dữ liệu của chiều đầu số được ánh xạ từ bảng tblserviceNumberInfo. Sơ
đồ ánh xạ như sau.
50
Hình 4.8 Ánh xạ chiều đầu số
4.3.2.4 Chiều nhóm dịch vụ.
Dữ liệu cho chiều nhóm dịch vụ được ánh xạ từ bảng tblgroupinfo. Sơ đồ ánh
xạ như sau .
Hình 4.9 Ánh xạ nhóm dịch vụ
4.3.2.5 Chiều thời gian.
Chiều thời gian được lấy từ trường datein trong bảng tblprocessedsmstoday và
sử dụng các hàm biến đổi để lấy thêm các thông tin về thời gian. Dữ liệu của chiều
này được biến đổi bằng lệnh SQL ở phụ lục 1.
4.3.2.6 Bảng sự kiện tổng hợp sản lượng .
Dữ liệu của bảng sự kiên tổng hợp sản lượng được tổng hợp từ dữ liệu các
bảng Dauso_Giatien, tblprocessedSMStoday, Dimmangvienthong, Dimdauso,
Dimmadichvu, Dimnhomdichvu, DimDate. Dữ liệu sau khi lấy ra sẽ được tổng hợp
bằng các hàm tính toán và đẩy vào kho dữ liệu.
51
4.3.2.7 Chiều Quảng cáo .
Dữ liệu cho chiều quảng cáo được lấy từ các bảng : Quangcao_vitri,
quangcao_Loaihinh, quangcao_Kichthuoc, Quangcao_Donvi, Quangcao_Chitiet.
Sau khi được nối lại với nhau bằng phép JOIN , chuyển đổi dữ liệu cho phù hợp với
bảng DimQuangCao trong kho dữ liệu sẽ được chèn vào bảng DimQuangcao . Sơ đồ
ánh xạ của chiều quảng cáo như sau.
Hình 4.10 Ánh xạ chiều quảng cáo.
4.3.2.8 Chiều khách hàng.
Dữ liệu cho chiều khách hàng được lấy từ bảng KhachHang trong dữ liệu
nguồn. Sơ đồ ánh xạ dữ liệu như hình 4.11
Hình 4.11 Ánh xạ cho chiều khách hàng.
52
4.3.2.9 Ánh xạ dữ liệu cho bảng sự kiện quảng cáo.
Dữ liệu cho bảng sự kiện quảng cáo được tổng hợp từ các bảng :
Quangcao_Sukien, tblprocessedsmstoday, Dimmadichvu, Dimnhomdichvu, Dimdate,
DimQuangcao.
4.3.2.10 Ánh xạ dữ liệu cho bảng sự kiện chi tiết dịch vụ.
Dữ liệu cho bảng sự kiện chi tiết dịch vụ được tổng hợp từ các bảng :
DimKhachhang, Dimdaso, DimMadichvu, DimTelco, DimDate, Dimnhomdichvu,
tblprocessedsmstoday.
4.4 Sử dụng dịch vụ SSAS để xây dựng các cơ sở dữ liệu nhiều
chiều
4.4.1 Xây dựng cube cho kho dữ liệu chủ đề tổng hợp sản lượng.
Kho dữ liệu chủ đề tổng hợp sản lượng có lược đồ như hình 4.12. Gồm có 5
bảng chiều : Dimdate, Dimnhomdichvu, DimmaDichvu, DimMangVienthong,
Dimdauso.
53
4.12 Lược đồ kho dữ liệu tổng hợp sản lượng.
Các bước thực hiện .
- Mở Business Intelligent Studio lên , tạo một project mới chọn kiểu là Analysis
Service Project.
- Trong màn hình soạn thảo hiện ra, bên khung solution explore chọn click chuột
phải vào Data sources chọn New Data Sources. Sau đó chọn kết nối đến Database
chứa kho dữ liệu.
- Nháy chuột phải vào Data Sources Viewes chọn new. Màn hình thuật sĩ hiện ra
chọn kết nối vừa tạo ở bước trên và chọn next. Tiếp theo chọn các bảng sẽ được
dùng để xây dựng kho dữ liệu: Dimdate, Dimnhomdichvu, DimmaDichvu,
DimMangVienthong, Dimdauso và FactSanluong. Chọn finish.
54
Hình 4.13 Chọn các bảng cho data soures views
- Các bảng được chọn sẽ xuất hiện trên màn hình soạn thảo. Tiếp theo ta chọn các
quan hệ cho các bảng chiều tới bảng bảng sự kiện.
55
Hình 4.14 Đặt các quan hệ cho các bảng
- Nháy chuột phải lên cube chọn new. Thuật sĩ hiện lên ta chọn data Sources Views
vừa thực hiện ở bước trên, sau đó quyết định các bảng fact và chiều đồng thời
chọn Timedemesion table là DimDate. Như ở hình 4.15.
- Ở khung tiếp theo chọn các cột của chiều thời gian tương ứng với các thuộc tính
có sẵn. như hình 4.16
- Khung tiếp theo chọn các Measures cho cube. Như hình 4.17.
- Khung tiếp theo hiện ra ta sẽ chọn các thuộc tính cho các chiều . Cuối cùng chọn
Finish.
56
Hình 4.15 Quyết định các bảng chiều và sự kiện
Hình 4.17 Chọn các Measures. Các thành phần tính toán.
57
- Tiếp theo ta định nghĩa các phép tính toán trên cubes. Click Double lên cube vừa
mới tạo Khung design cho cube xuất hiện click vào tab calculations. Ở thanh công
cụ chọn new calculations. Ta sẽ định nghĩa các hàm tính toán cho các Measure.
Mỗi measure ta chọn một hàm tính toán. Các measure dùng để tính toán dữ liệu từ
các cột có sẵn.
Hình 4.18 Định nghĩa các hàm tính toán
Kết thúc bước này ta nháy chuột phải vào tên project bên khung solution
Explore để chọn Deploy để xây dựng cube.
4.4.2 Xây dựng cube cho kho dữ liệu chủ đề quảng cáo và chi phí
Các bước thực hiện của việc xây dựng cube cho kho dữ liệu chủ đề quảng cáo
và chi phí được thực hiện tương tự như cách xây dựng kho dữ liệu chủ đề tổng hợp
sản lượng. Chỉ lưu ý một số điều sau:
- Các bảng lựa chọn DimDate, DimMadichvu, DimNhomdichvu, DimQuangcao,
FactQuangcao.
- Các measure được lựa chọn bao gồm : Soluong, Thanhtien, Chietkhau,
Tienthanhtoan, Tongtongthu, loinhuan
58
4.4.3 Xây dựng cube cho kho dữ liệu chủ đề chi tiết sử dụng dịch vụ.
Cũng tương tự như các bước xây dựng kho dữ liệu tổng hợp cước. Có các lưu ý
sau.
- Các bảng lựa chọn bao gồm : DimKhachHang, DimDauso, DimMadichvu,
DimNhomDichVu, DimMangvienthong, DimDauso, Factchitietdichvu.
- Các measure được định nghĩa bao gồm: Tinyeucau, Tindapung, Tindapungvuot,
TinYeucauTinhTien, Tinyeucausai, TiensuDung, TiendapUng.
4.4.4 Sử dụng truy vấn MDX để lấy dữ liệu trên cube
Ta sẽ sử dụng một số truy vấn MDX để lấy dữ liệu trên cube, qua đó phân tích
điểm mạnh của ngôn ngữ truy vấn này.
Ví dụ 1: Ta cần lấy Tổng tin tính tiền, tổng tin đáp ứng, tổng tin yêu cầu từ bảng fact
nhóm theo đầu số trong kho dữ liệu tổng hợp sản lượng, với điều kiện thời gian là
ngày 01-03-2010. Với các truy vấn thông thường ta phải nối 3 bảng : Dimdauso,
Dimdate, FactSanluong lọc lấy các giá trị nằm ở ngày 01-3-2010 sau đó nhóm lại
theo đầu số . Với MDX ta chỉ cần một truy vấn đơn giản sau
SELECT {[Measures].[Tongso Yeu Cau],
[Measures].[Tongso Yeucau Tinh Tien],
[Measures].[Tong Tien Tin Dapung]} ON Columns,
[Dim Dau So].[Dau So].Members ON Rows
FROM [VMG DWH]
WHERE [Dim Date].[Full Date].[20100301]
Kết quả hiển thị như sau:
Hình 4.19 Kết quả hiển thị truy vấn
59
Ví dụ 2: Ta cần lấy dữ liệu theo 2 chiều: thời gian và Dauso . Trong đó thời gian ở trên
các hàng, đầu số ở trên các cột nội dung trong các ô là tổng sản lượng. Với truy vấn
thông thường ta phải dùng phép toán gọi là PIVOT để lấy dữ liệu , nhưng với MDX ta
chỉ cần một truy vấn đơn giản sau đây.
SELECT [Dim Dau So].[Dau So].Members ON COLUMNS,
[Dim Date].[Full Date].members ON ROWS
FROM [VMG DWH]
Kết quả trả về như sau
Với hai ví dụ trên , điểm nổi bật của MDX đã được làm rõ .
4.4 Sử dụng dịch vụ SSRS để xây dựng các báo cáo.
Sau đây khóa luận sẽ xây dựng một số mẫu báo cáo sẵn cho người dùng có thể
truy cập qua dịch vụ web.
4.4.1 Báo cáo sản lượng đầu số.
4.4.1.1 Yêu cầu:
Mẫu báo cáo này yêu cầu thống kê sản lượng đầu số theo các tiêu chí : Thời gian,
đầu số, mạng viễn thông, nhóm dịch vụ. Kết quả hiển thị là ma trận trong đó các cột là
các đầu số, các hàng là thời gian các ô dữ liệu là tổng sản lượng theo các tiêu chí trên
với đầu số và thời gian tương ứng.
4.4.1.2 Cách xây dựng .
- Mở SQL Server Business Intelligence Studio lên tạo một dự án mới, chọn kiểu
là Report Server Project.
60
- Trong khung Solution Explore click chuột phải lên Shared data Sources chọn
new. Trong khung hiện ra chọn kiểu kết nối là SQL Server Analysis Service và
chọn đến cube chứa dữ liệu VMG_DWH. Sau đó chọn kết thúc.
- Nháy chuột phải vào Reports chọn New Report.
- Trong màn hình thuật sĩ hiện ra chọn datasource đã tạo và click next.
- Tại màn hình tiếp theo chọn Query builder. Ở đây có 2 cách tạo truy vấn : bằng
đồ họa hoặc bằng dòng lệnh. Ta chọn các cột tương ứng và truy vấn dữ liệu
như hình 4.19 .Chọn các biến của truy vấn là tham số cho báo cáo .Chọn OK
-
Hình 4.20 Xây dựng truy vấn.
- Tại khung Select The Reports Type chọn kiểu Matrix. Khung tiếp theo hiện ra
chọn Đầu số trên các cột, Sql_Date trên các hàng và Tongtin_yeucau_tinhtien
là chi tiết. Như ở hình 4.20.
- Khung tiếp theo hiện ra chọn kiểu trình bày báo cáo rồi chọn Finish.
61
- Trong khung thiết kế nháy chuột phải vào vào cột đầu số và chọn Subtotal,
nháy chuột phải vào hàng Sql_Date và chọn Subtotal.
- Nháy chuột phải vào tên project và chọn properties . Ở khung hiện ra chọn
targetServerUrl đánh địa chỉ của nơi chứa dữ liệu các báo cáo trên webserver .
Ở đây địa chỉ đích được cấu hình là :
- Cuối cùng nháy chuột phải vào project và chọn deploy.
- Kết quả chạy được hiển thị như hình 4.21.
- Kết quả hiển thị trên web như hình 4.22.
Hình 4.21 Thiết kế báo cáo
62
\
Hình 4.22 màn hình xây dựng báo cáo
- Để chèn biểu đồ ta chọn Chart trng thanh công cụ toolbox.
- Chuyển sang tab dataset và kéo các trường dũ liệu vào các chiều của biểu đồ.
- Có thể thay đổi kiểu biểu đồ bằng cách nháy chuột phải vào biểu đồ và chọn
charttype, trong menu xổ ra có các kiểu biểu đồ cho người dùng chọn.
- Để thay đổi các thuộc tính của biểu đồ ta nháy chuột phải vào biểu đồ ta chọn
property. Ở đây có thể tùy chỉnh các thuộc tính của biểu đồ.
- Với ví dụ này ta chọn kiểu đồ thị là line. Kết quả hiển thị như ở hình 4.22
63
Hình 4.22 Kết quả hiển thị báo cáo sản lượng đầu số.
4.4.2 Báo cáo sản lượng theo các mạng viễn thông.
Yêu cầu của báo cáo này là tổng kết sản lượng của các dịch vụ theo các tiêu chí:
Thời gian, mạng viễn thông, nhóm dịch vụ. Kết quả hiển thị dạng ma trận với các
cột là các mạng viễn thông các hàng là thời gian.
Kết quả báo cáo xây dựng được hiển thị như hình 4.23.
64
Hình 4.23 Báo cáo theo mạng viễn thông.
4.4.3 Báo cáo sản lượng theo đầu số và nhóm dịch vụ
Báo cáo này tính sản lượng theo các tiêu chí: đầu số, nhóm dịch vụ, thời gian và
mãng viễn thông. Với các cột là các đầu số, các hàng là các nhóm dịch vụ.
Kết quả được hiển thị như hình 4.24.
65
Hình 4.24 Báo cáo theo nhóm dịch vụ
66
KẾT LUẬN
5.1 Những điều đã làm được
Khóa luận đã hoàn thành việc xây dựng kho dữ liệu cho hệ thống quản lý sản
lượng dịch vụ tại Công Ty Cổ Phần Truyền Thông VMG. Bao gồm:
- Xây dựng mô hình dữ liệu: các bảng chiều , bảng sự kiện. Qua tìm hiểu
phân tích , khóa luận đã xây dựng kho dữ liệu với 8 bảng chiều 3 bảng sự
kiện.
- Xây dựng tiến trình ETL bằng dịch vụ SQL Intergration Service của SQL
Server 2005 để đẩy dữ liệu vào kho dữ liệu. Sử dụng dịch vụ SSIS để xây
dựng nên tiến trình ETL nhằm trích xuất, chuyển đổi và đẩy dữ liệu các
bảng trong kho dữ liệu.
- Xây dựng các kho dữ liệu chủ đề và tạo nên các cơ sở dữ liệu nhiều chiều
bằng dịch vụ Analysis Service của SQL Server 2005. Khóa luận đã xây
dựng 3 kho dữ liệu chủ đề phục vụ cho các nghiệp vụ tại công ty. Các kho
dữ liệu này cho thấy hiệu quả xử lý hơn hẳn cách tổ chức dữ liệu theo kiểu
bảng quan hệ. Dễ dàng cho các người phát triển ứng dụng, hiệu năng hệ
thống được nâng cao, và đáp ứng được các yêu cầu phân tích chuyên sâu
của nghiệp vụ.
- Cấu hình và sử dụng dịch vụ Reporting Service cùng với công cụ Business
Intelligence của SQL Server 2005 để xây dựng nên các báo cáo và quản lý
các báo cáo. Cho phép người dùng truy cập qua dịch vụ web.
5.2 Những điều chưa làm được
Khóa luận đã xây dựng được kho dữ liệu và tạo ra các báo cáo truy cập cho
người dùng, tuy nhiên ngày nay, yêu cầu của nghiệp vụ kinh doanh ngày càng
cao , vì thế cần có những phân tích mang tính chuyên sâu hơn cho người dùng.
Trong khi đó ,các báo cáo dạng truyền thống vẫn chưa đáp ứng được các yêu
cầu phân tích đó. Những năm gần đây, việc khai phá dữ liệu để tìm kiếm tri
thức, dự đoán xu hướng và hỗ trợ ra quyết định đã trở thành một nhu cầu bức
thiết trong phân tích dữ liệu. Khóa luận cần được phát triển thêm để có thể xây
dựng các ứng dụng phân tích dữ liệu mang tính thông minh hơn.
Do điều kiên thời gian hạn hẹp và hiểu biết của bản thân còn nhiều hạn chế
nên chắc chắn không tránh khỏi những thiếu sót. Rất mong nhận được sự góp
ý chân thành của các thầy cô, bạn bè và những người quan tâm đến đề tài này.
67
TÀI LIỆU THAM KHẢO
1. The Microsoft Data Warehouse Toolkit With SQL Server 2005 and the
Microsoft Business Intelligence Toolset. Joy Mundy,Warren Thornthwaite,
Ralph Kimbal © 2006
2. Building a Data Warehouse with Example in SQL Server. Copyright 2008 by
Vincent Rainardi.
3. Building the Data Warehouse 1st edition . Copyright 1992 by W.H.Inmon
4. Professional SQL Server Analysis Services 2005 with MDX. By Sivakumar
Harinath and Stephen R. Quinn , Wrox Press 2006
5. Professional SQL Server™ 2005 Reporting Services. Copyright © 2006 by
Wiley Publishing, Inc., Indianapolis, Indiana
6. Pro SQL Server 2005 Integration Services . By Jim Wightman Published Dec
2007
68
PHỤ LỤC 1
1. Câu lệnh SQL lấy các trường của chiều thời gian
SELECT DISTINCT
DATEADD(dd, DATEDIFF(dd, 0, DateIn), 0) AS sqlDate,
CONVERT(varchar(10), DateIn, 112) AS fulldate,
DATEPART(dw, DateIn) AS dateweek,
DATEPART(dd, DateIn) AS dateOfmonth,
DATEDIFF(dd, DATEADD(qq, DATEDIFF(qq, 0, DateIn), 0),
DateIn) AS dateOfquater,
DATEDIFF(dd, DATEADD(yy,DATEDIFF(yy, 0, DateIn), 0),
DateIn) AS dateofYear,
DATEDIFF(ww, DATEADD(mm, DATEDIFF(mm, 0, DateIn), 0),
DateIn)+1 AS weekOfMonth,
DATEDIFF(ww,DATEADD(qq, DATEDIFF(qq, 0, DateIn), 0),
DateIn) AS weekOfQuater,
DATEDIFF(ww, DATEADD(yy, DATEDIFF(yy, 0, DateIn), 0),
DateIn) AS weekofYear,
DATEDIFF(mm, DATEADD(qq, DATEDIFF(qq, 0, DateIn), 0),
DateIn) AS monthOfQuater,
DATEDIFF(mm, DATEADD(yy, DATEDIFF(yy, 0, DateIn), 0),
DateIn) AS monthofYear,
DATEPART(qq, DateIn) AS quater, DATEPART(yy, DateIn) AS
year,
(CASE WHEN datepart(dw, datein) = '6' OR
datepart(dw, datein) = '7' THEN 0 ELSE 1 END) AS
ISdayInweek
FROM tblProcessedSMSToday
WHERE DateIn > @datein
ORDER BY sqlDate
69
PHỤ LỤC 2
Danh sách các trích dẫn.
[1]. Building the Data Warehouse 1st edition . Copyright 1992 by W.H.Inmon
[2]. Building a Data Warehouse with Example in SQL Server. Copyright 2008
by Vincent Rainardi.
Các file đính kèm theo tài liệu này:
- Luận văn-Áp dụng Data Warehouse trong phân tích thông tin về các dịch vụ giá trị gia tăng trên điện thoại (2).pdf