DANH SÁCH HÌNH VẼ 4
THUẬT NGỮ VÀ VIẾT TẮT 6
TÓM TẮT NỘI DUNG 7
MỞ ĐẦU 8
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. 10
1.2 Dữ liệu của hệ thống . 11
1.3 Mục tiêu và phạm vi của đề tài. 11
1.3.1 Mục tiêu. 11
1.3.2 Phạm vi của đề tài. 12
1.4. Công cụ thực hiện 12
1.4.2 Hệ quản trị cơ sở dữ liệu cho kho dữ liệu . 12
1.4.2 Công cụ xây dựng kho dữ liệu. 12
1.4.3 Công cụ xây dựng báo cáo. 12
CHƯƠNG 2: TỔNG QUAN VỀ DATA WAREHOUSE 13
2.1 Định nghĩa kho dữ liệu. 13
2.2 Các đặc trưng của kho dữ liệu 13
2.2.1 Hướng chủ đề . 13
2.2.2 Tính tích hợp 13
2.2.3 Tính bền vững: 13
2.2.4 Gắn với thời gian . 14
2.2.5 Dữ liệu tổng hợp : 14
2.3 Kiến trúc của kho dữ liệu 14
2.3.1 Nguồn dữ liệu . 14
2.3.2 Khu vực xử lý . 15
2.3.2.1 Nhiệm vụ : 15
2.3.2.2 Các bước :. 15
2.3.2.3 Các kiểu kiến trúc ETL 16
2.3.3 Kho dữ liệu . 18
2.4 Mô hình logic của kho dữ liệu 19
2.4.1 Lược đồ hình sao 19
2.4.2 Lược đồ hình bông tuyết. 19
2.4.3 Mô hình dữ liệu nhiều chiều 20
2.5 Kho dữ liệu ngày nay 21
2.5.1 Quản trị doanh nghiệp thông minh (Busines Intelligence). 21
2.5.2 Quản lý mối quan hệ khách hàng. 21
2.5.3 Khai phá dữ liệu . 21
2.5.4 Quản lý dữ liệu chủ . 22
2.5.5 Tích hợp dữ liệu khách hàng. 22
2.6 Xu hướng tương lai của kho dữ liệu 22
2.6.1 Dữ liệu phi cấu trúc. 23
2.6.2 Tìm kiếm. 23
2.6.3 Kiến trúc hướng dịch vụ. 23
2.6.4 Kho dữ liệu thời gian thực. 23
CHƯƠNG 3:TỔNG QUAN VỀ MICROSOFT SQL SERVER 2005 24
3.1 Tổng quan về hệ quản trị cơ sở dữ liệu Microsoft SQL Server. 24
3.2 Tổng quan về SQL Server Integration Service(SSIS). 26
3.3 Tổng quan về SQL Server Analysis Service . 27
3.4 Tổng quan về ngôn ngữ truy vấn MDX. 29
3.5 Tổng quan về SQL Server Reporting Services. 32
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. 33
CHƯƠNG 4: PHÂN TÍCH THIẾT KẾ 35
4.1 Phân tích hệ thống nguồn. 35
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 . 35
4.1.2 Quản lý quảng cáo của các dịch vụ. 36
4.2 Thiết kế kho dữ liệu. 36
4.2.1 Kho dữ liệu chủ đề tổng hợp sản lượng dịch vụ. 36
4.2.2 Hệ thống quản lý quảng cáo . 41
4.2.3 Kho dữ liệu chủ đề chi tiết sử dụng dịch vụ của khách hàng. 45
4.3 Sử dụng SSIS để xây dựng tiến trình ETL 47
4.3.1 Mô tả chung . 47
4.3.2 Ánh xạ dữ liệu cho các chiều. 47
4.3.2.1 Chiều mã dịch vụ. 47
4.3.2.2 Chiều mạng viễn thông 48
4.3.2.3 Chiều đầu số 48
4.3.2.4 Chiều nhóm dịch vụ. 49
4.3.2.5 Chiều thời gian. 49
4.3.2.6 Bảng sự kiện tổng hợp sản lượng . 49
4.3.2.7 Chiều Quảng cáo . 50
4.3.2.8 Chiều khách hàng. 50
4.3.2.9 Ánh xạ dữ liệu cho bảng sự kiện quảng cáo. 51
4.3.2.10 Ánh xạ dữ liệu cho bảng sự kiện chi tiết dịch vụ. 51
4.4 Sử dụng dịch vụ SSAS để xây dựng các cơ sở dữ liệu nhiều chiều 51
4.4.1 Xây dựng cube cho kho dữ liệu chủ đề tổng hợp sản lượng. 51
4.4.2 Xây dựng cube cho kho dữ liệu chủ đề quảng cáo và chi phí 56
4.4.3 Xây dựng cube cho kho dữ liệu chủ đề chi tiết sử dụng dịch vụ. 57
4.4.4 Sử dụng truy vấn MDX để lấy dữ liệu trên cube 57
4.4 Sử dụng dịch vụ SSRS để xây dựng các báo cáo. 58
4.4.1 Báo cáo sản lượng đầu số. 58
4.4.1.1 Yêu cầu: 58
4.4.1.2 Cách xây dựng . 58
4.4.2 Báo cáo sản lượng theo các mạng viễn thông. 62
4.4.3 Báo cáo sản lượng theo đầu số và nhóm dịch vụ 63
KẾT LUẬN 65
5.1 Những điều đã làm được 65
5.2 Những điều chưa làm được và hướng phát triển 65
TÀI LIỆU THAM KHẢO 66
PHỤ LỤC 1 67
PHỤ LỤC 2 68
71 trang |
Chia sẻ: maiphuongdc | Lượt xem: 3528 | Lượt tải: 1
Bạn đang xem trước 20 trang 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, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
kiện bán hàng
Loại sản phẩm
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 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
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]
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.
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.
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
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 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.
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
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.
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.
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ó 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.
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).
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
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.
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ả.
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
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
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
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
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.
Đố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ế.
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
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
Tiny
Các file đính kèm theo tài liệu này:
- Nguyen Luong Thai Duc_K51MMT_Khoa luan tot nghiep dai hoc.doc