Đâ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ụ .
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
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
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ụ.
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.
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
4.3 Sử dụng SSIS để xây dựng tiến trình ETL 4.3.1 Mô tả chung . 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
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ơ
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.
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
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 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.
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.
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.
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.
Hình 4.15 Quyết định các bảng chiều và sự kiện
- 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
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:
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: 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.
- 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.
- 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à : http://localhost/reports.
- 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.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 đồ.
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.
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 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ý