Xuất phát từ lý do trên nên bài thu hoạch của em sẽ tìm hiểu về “ vai trò của OLAP và hỗ trợ ra quyết định ” nhằm tìm hiểu về kho dữ liệu và công nghệ OLAP sử dụng để khai thác trên các
Trang 1TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
BÀI THU HOẠCH MÔN
HỆ HỖ TRỢ QUYẾT ĐỊNH
ĐỀ TÀI VAI TRÒ OLAP & HỖ TRỢ RA QUYẾT
ĐỊNH
GVHD: PGS.TS Đỗ Phúc SVTH: Nguyễn Hải Yến MSSV: CH1301074
TP Hồ Chí Minh, ngày 20 tháng 06 năm 2014
Trang 2LỜI NÓI ĐẦU
Cùng với việc áp dụng công nghệ thông tin vào hầu hết các lĩnh vực trongđời sống, kinh tế, xã hội đó là việc dữ liệu thu nhận được qua thời gian ngày càngnhiều Vì vậy yêu cầu cần thiết đặt ra với các doanh nghiệp là việc tổ chức vàkhai thác các dữ liệu này một cách hiệu quả để phục vụ cho những quyết địnhkinh doanh ngày càng tốt hơn
Xuất phát từ lý do trên nên bài thu hoạch của em sẽ tìm hiểu về “ vai trò
của OLAP và hỗ trợ ra quyết định ” nhằm tìm hiểu về kho dữ liệu và công nghệ
OLAP sử dụng để khai thác trên các kho dữ liệu, hướng tới xây dựng các hệthống có khả năng ứng dụng công nghệ phân tích trực tuyến vào khai thác dữliệu phục vụ cho công tác quản lý, hỗ trợ ra quyết định
Em xin cảm ơn Thầy PGS.TS Đỗ Phúc đã tận tình truyền đạt kiến thức và
có những định hướng giúp em hoàn thành bài thu hoạch
Mặc dù đã rất cố gắng nhưng bài thu hoạch của em khó tránh khỏi thiếusót, sai lầm em mong Thầy và các bạn góp ý nhận xét để đề tài hoàn thiện hơn
Trang 3MỤC LỤC
MỤC LỤC 3
Chương 1 4
KHO DỮ LIỆU CỦA HỆ HỖ TRỢ RA QUYẾT ĐỊNH 4
Chương 2: 14
KỸ THUẬT PHÂN TÍCH DỮ LIỆU TRỰC TUYẾN (OLAP) TRONG HỖ TRỢ RA QUYẾT ĐỊNH 14
2.6.Tiến trình trợ giúp quyết định dựa vào bài toán cụ thể 22
B1: Trước khi thiết kế mô hình OLAP cho bài toán, chúng ta cần xác định rõ các vấn đề gặp phải trong các tình huống xem xét Các tình huống nêu ra dựa vào thực tế, từ đó đặt ra những mục tiêu cần đạt được 22
Chương 3: 24
COMPONENT PIVOT TABLE TRONG EXCEL 24
TÀI LIỆU THAM KHẢO 32
Trang 4Chương 1.
KHO DỮ LIỆU CỦA HỆ HỖ TRỢ RA QUYẾT ĐỊNH
1.1 Định nghĩa kho dữ liệu (Data warehouse)
“Kho dữ liệu là tập hợp dữ liệu được tổ chức thành chủ đề, tích hợp từnhiều nguồn khác nhau, bất biến với thời gian và lưu trữ lâu dài nhằm hỗ trợ tiếntrình ra quyết định quản lý” theo – W-H Inmon
“Kho dữ liệu là dữ liệu giao dịch, được cấu trúc theo dạng đặc biệt, phục vụtruy vấn, phân tích ” theo – Ralph Kimball
Kho dữ liệu thường rất lớn tới hàng trăm GB hay thậm chí hàng Terabyte.Kho dữ liệu được xây dựng để tiện lợi cho việc truy cập theo nhiều nguồn, nhiềukiểu dữ liệu khác nhau sao cho có thể kết hợp được cả những ứng dụng của cáccông nghệ hiện đại và kế thừa được từ những hệ thống có sẵn từ trước
Kho dữ liệu, gọi chính xác hơn là kho thông tin là một cơ sở dữ liệu hướngđối tượng được thiết kế với việc tiếp cận các ý kiến trong mọi lĩnh vực kinh doanh
Nó cung cấp các công cụ để đáp ứng các thông tin cần thiết cho các nhà quản trịkinh doanh từ những yêu cầu dữ liệu phức hợp đến những điều kiện thuận tiện để
có được thông tin nhanh, chính xác Một kho dữ liệu được thiết kế để người sửdụng có thể nhận ra thông tin mà họ muốn có và truy cập đến bằng những công cụđơn giản
Data Warehouse
Trang 51.2 Đặc điểm của kho dữ liệu
Kho dữ liệu có các đặc điểm sau đây:
• Tích hợp (Integrated) : dữ liệu tập hợp từ nhiều nguồn khác nhau trong một
tổ chức / công ty và được đồng nhất, sắp xếp, rút gọn Một kho dữ liệu làmột khung nhìn tổng thể thống nhất các khung nhìn khác nhau Ví dụ: một
hệ thống tác nghiệp như bán hàng hoặc tiếp thị có thể có chung một dạngthông tin về khách hàng, nhưng các vấn đề về tài chính cần một khung nhìnkhác cho thông tin về khách hàng Một kho sẽ có một khung nhìn toàn thể
về một khách hàng Khung nhìn đó bao gồm các phần dữ liệu khác nhau từcác hệ thống tác nghiệp khác nhau
• Dữ liệu có tính ổn định, chất lượng, nhất quán và không biến động: dữ liệuđược lưu trữ lâu dài trong kho dữ liệu Mặc dù có thêm dữ liệu mới nhậpvào nhưng dữ liệu cũ trong kho vẫn không bị xóa, điều đó cho phép cungcấp thông tin về một khoảng thời gian dài, cung cấp đủ số liệu cần thiết chocác mô hình nghiệp vụ phân tích, dự báo
Trang 6• Chuẩn hóa:
− Các quy ước tên
− Các thuộc tính
− Các đơn vị đo lường
• Hướng chủ đề (Subject –oriented) : chuyển từ hướng ứng dụng sang hướng
hỗ trợ quyết định
− Được tổ chức xung quanh các chủ đề chính, như khách hàng(customer), sản phẩm (product), bán hàng (sales)
− Tập trung vào việc mô hình hóa và phân tích dữ liệu cho các nhà đưa
ra quyết định, mà không tập trung vào các hoạt động hay các xử lýgiao dịch hàng ngày
− Cung cấp một khung nhìn đơn giản và súc tích xung quanh các sựkiện của các chủ đề
• Biến thời gian (time-variant): các dữ liệu được định nghĩa vào một thờiđiểm xác định và được ghi chép lại phục vụ cho việc so sánh dữ liệu theochiều thời gian
− Yêu cầu quan trong cho kho dữ liệu là phạm vi về thời gian dài hơn
so với các hệ thống tác nghiệp
Cơ sở dữ liệu tác nghiệp: dữ liệu có giá trị hiện thời
Dữ liệu của kho dữ liệu: cung cấp thông tin lịch sử (ví
dụ như, 5-10 năm trước)
− Yếu tố thời gian được lưu trữ trong Cơ sở dữ liệu (CSDL)
Trang 71.3 Các khái niệm trong kho dữ liệu
1.3.1 Kho dữ liệu cục bộ (Data Mart)
Kho dữ liệu cục bộ (DM) là cơ sở dữ liệu có những đặc điểm giống với kho
dữ liệu nhưng có quy mô nhỏ hơn và lưu trữ dữ liệu về một lĩnh vực, một chuyênngành DataMart là kho dữ liệu hướng chủ đề
Các DataMart có thể được hình thành từ một tập con dữ liệu của kho dữliệu hoặc cũng có thể được xây dựng độc lập và sau khi xây dựng xong cácDataMart có thể được kết nối tích hợp lại với nhau thành kho dữ liệu
DataMart được chia ra làm hai loại
− DataMart phụ thuộc (Dependent Data Mart) : chứa những dữ liệulấy từ DataWarehouse, những dữ liệu này được trích lọc, tinh chế,tích hợp lại ở mức cao hơn để phục vụ một chủ đề nhất định
− DataMart độc lập (Independent Data Mart): được xây dựng trướcData Warehouse, dữ liệu được lấy trực tiếp từ các nguồn khác nhau.1.3.2 Siêu dữ liệu (Metadata )
Siêu dữ liệu dùng để mô tả tài nguyên thông tin, Thuật ngữ “meta” xuất xứ
từ một từ hy lạp dùng để chỉ một cái gì đó có bản chất cơ bản hơn, cao hơn Vì vậyMetadata là dữ liệu của dữ liệu, tức là thông tin mô tả nội dung của cơ sở dữ liệu
Metadata báo cho người dùng biết thời gian cập nhật sau cùng của dữ liệu,định dạng và mục đích sử dụng của nó Những thông tin này có thể hướng dẫnngười dùng duyệt qua cơ sở dữ liệu và giúp họ hiểu được ý nghĩa và ngữ cảnh củacác dữ liệu tài chính, các bản ghi về khách hàng và các giao dịch kinh doanh
Metadata cung cấp cho người sử dụng sự truy nhập tương tác để giúp cho
họ có thể hiểu được nội dung và tìm thấy được dữ liệu cần thiết Trong thực tế khảnăng trích lọc dữ liệu và metadata còn thô Do đó cần tạo ra giao diện dùngmegadata cho người sử dụng
Tất cả các thành phần của Datawarehouse đều tacó thể lấy dữ liệu từmegadata Megadata được lưu trữ ở trung tâm Datawarehouse
1.3.3 Kho dữ liệu tác nghiệp (Operational Data Store - ODS)
Trang 8Kho dữ liệu tác nghiệp là hệ thống tác nghiệp tích hợp căn bản dùng cho công việc trợ giúp quyết định và phân tích trên dữ liệu giao dịch tác nghiệp Nói cách khác ODS là một khái niệm có cấu trúc để hỗ trợ cho việc tạo quyết định tác nghiệp hàng ngày, lưu trữ những dữ liệu có giá trị hiện thời được chuyển đến từ các ứng dụng tác nghiệp ODS cần được xây dựng riêng biệt và là một phần của Dataware house
Sự phân cách của ODS và DW
ODS lưu trữ dữ liệu thuần nhất và có giá trị hiện thời còn Dataware house
có thể chứa rất nhiều dữ liệu không thuần nhất ở nhiều mức độ khác nhau
Sự phong phú về loại dữ liệu trong DW
1.4 Mục đích của kho dữ liệu
Mục tiêu chính của kho dữ liệu là :
− Phải có khả năng đáp ứng mọi thông tin yêu cầu của người dùng
− Hỗ trợ nhân viên của tổ chức thực hiện tốt, hiệu quả công việc của họ
− Giúp các tổ chức xác định, quản lý điều hành các dự án, nghiệp vụ mộtcách hiệu quả và chính xác
− Tích hợp dữ liệu và siêu dữ liệu từ nhiều nguồn khác nhau
Trang 9Muốn đạt được những mục đích trên thì kho dữ liệu phải:
− Nâng cao chất lượng dữ liệu bằng cách làm sạch và hướng chủ đề nhấtđịnh
− Tổng hợp và kết nối dữ liệu
− Đồng bộ hóa các nguồn dữ liệu
− Phân định và đồng nhất các hệ cơ sở dữ liệu tác nghiệp
− Quản lý siêu dữ liệu
− Cung cấp thông tin được tích hợp, tóm tắt hoặc được liệt kê, tổ chức theocác chủ đề
− Dùng trong các hệ thống hỗ trợ ra quyết định
1.5 Lợi ích của kho dữ liệu
Kho dữ liệu tạo ra những quyết định có ảnh hưởng lớn Kho dữ liệu chophép rút trích tài nguyên nhân lực và máy tính theo yêu cầu để cung cấp các câutruy vấn và các báo cáo dựa vào cơ sở dữ liệu hoạt động và sản xuất tạo ra sựtiết kiệm đáng kể
Tăng thêm chất lượng và tính linh hoạt của việc phân tích kinh doanh dophát sinh từ cấu trúc dữ liệu đa tầng của kho dữ liệu, là nơi cung cấp dữ liệu đượcsắp xếp từ mức độ chi tiết đến mức độ tổng quát của công việc kinh doanh Công việc kinh doanh trở nên thông minh hơn
Doanh nghiệp có thể giữ gìn mối quan hệ với khách hàng tốt hơn do mốitương quan với dữ liệu của tất cả các khách hàng qua một kho dữ liệu riêng Dịch vụ khách hàng được nâng cao
Khi xác định chính xác các nhu cầu từ kho dữ liệu giúp ta đánh giá đượcnhững hạn chế và mục tiêu kinh doanh một cách chính xác.Sự phân tích khôngngừng thông tin kinh doanh nảy sinh các ý kiến cho sự sáng tạo
1.6 Cấu trúc của kho dữ liệu
Bao gồm ba tầng :
• Tầng đáy: Là nơi cung cấp dịch vụ lấy dữ liệu từ nhiều nguồn khác sau đóchuẩn hóa, làm sạch và lưu trữ dữ liệu đã tập tung
Trang 10• Tầng giữa: cung cấp các dịch vụ để thực hiện các thao tác với kho dữ liệugọi là dịch vụ OLAP (OLAP server) Có thể cài đặt bằng Relational OLAP,Multidimensional OLAP hay kết hợp cả hai mô hình trên Hybrid OLAP
• Tầng trên cùng: nơi chứa các câu truy vấn, báo cáo, phân tích
Mô hình Datawarehouse 3 lớp
1.7 Các Phương pháp lưu trữ dữ liệu
1.7.1 MOLAP (Multidimensional OLAP)
Dữ liệu cơ bản của khối được lưu trữ cùng với dữ liệu kết hợp trong cấutrúc đa chiều Cách tiếp cận này kết hợp kho dữ liệu đa chiều và các dịch vụ củaOLAP trên cùng một server MOLAP là cấu trúc tối ưu cho việc lưu trữ các sựkiện đã phân loại MOLAP là sự lựa chọn tốt nhất cho những ứng dụng có đặcđiểm :
Trang 11• Yêu cầu tốc độ truy vấn cao
• Có khả năng phân tích dữ liệu tích hợp
• Dễ sử dụng : bởi dữ liệu đã được tổng hợp từ trước và được lưu trữ trongkho dữ liệu đa chiều
1.7.2 ROLAP (Relational OLAP)
Dữ liệu cơ bản của khối được lưu trữ cùng với dữ liệu kết hợp trong cơ sở
dữ liệu quan hệ Cách tiếp cận này bao gồm các dịch vụ của OLAP và cơ sở dữliệu quan hệ Các dữ liệu được lưu trữ trong những bảng quan hệvà có kích thướchàng trăn Gigabyte Hệ ROLAP có khả năng truy vấn cực kỳ linh động do “chuẩn
bị sẵn sàng ” tất cả dữ liệu tác nghiệp cho người sử dụng, dễ dàng trích và tổnghợp dữ liệu theo yêu cầu ROLAP là sự lựa chọn cho kho dữ liệu có những đặcđiểm sau :
• Dữ liệu thường xuyên thay đổi : trong một kho dữ liệu hay biến động vàngười sử dụng lại đòi hỏi những tổng hợp gần như tức thời MOLAP phảitrích lấy thông tin dữ liệu ngoại tuyến và hầu hết các cơ sở dữ liệu đa chiềuđều yêu cầu tính toán lại toàn bộ cơ sở dữ liệu MOLAP không thích hợp
• Khối lượng dữ liệu lớn
• Các dạng truy vấn không được biết trước: ROLAP cho phép truy vấn vàtổng hợp từ bất kỳ nguồn dữ liệu tác nghiệp nào , tuy nhiên điều này lại dẫnđến sự phức tạp khi sử dụng trong việc ánh xạ tới các nguồn dữ liệu tácnghiệp
1.7.3 HOLAP (Hybrid OLAP)
HOLAP là kết hợp hai phương pháp MOLAP và ROLAP Dữ liệu cơ bảncủa khối được lưu trữ trong cơ sở dữ liệu quan hệ và dữ liệu kết hợp, được lưu trữtrong cấu trúc đa chiều hiệu suất cao
1.7.4 So sánh các mô hình
MOLAP ROLAP HOLAPLưu trữ dữ liệu cơ sở Khối Bảng quan hệ Bảng quan hệLưu trữ thông tin tổng hợp Khối Bảng quan hệ Khối
Hiệu suất thực hiện truy vấn Nhanh nhất Chậm nhất Nhanh
Trang 12Tiêu thụ không gian lưu trữ Nhiều Thấp Trung bìnhChi phí bảo trì Cao Thấp Trung bình
1.8 Các mô hình thực thể trong kho dữ liệu
Mô hình thực thể mối quan hệ được sử dụng phổ biến trong mô hình cơ sở
dữ liệu OLTP (Online Transaction Processing) Tuy nhiên mô hình cơ sở dữ liệu
ER (Entity- Relationship) không thích hợp cho việc thiết kế kho dữ liệu vì phảitruy vấn đến quá nhiều bảng khác nhau Hầu hết các kho dữ liệu sử dụng mô hìnhsao (Star Schema)
• Mô hình sao chỉ gồm duy nhất một bảng sự kiện và một bảng chiều Trongbảng sự kiện sẽ có trường khóa ngoài liên kết với khóa chính của các bảngchiều.Mô hình sao không hỗ trợ tốt cho các bảng chứa các thuộc tính phân cấp
Ví dụ về mô hình sao
• Mô hình bông tuyết (Snow Flake Schema) : mô hình này giải quyết được vấn
đề khi bảng có các thuộc tính phân cấp Điều này giúp cho việc bảo trì cácbảng chiều tốt hơn Mô hình bông tuyết là một mở rộng của sơ đồ hình saotrong đó một vài cấu trúc chiều được chuẩn hóa thành một tập các bảng chiềunhỏ hơn, hình thức tương tự như bông tuyết
Ví dụ về mô hình bông tuyết
Trang 13• Mô hình chòm sao (fact Constellation)Các ứng dụng phức tạp có thể cần nhiềubảng sự kiện, các bảng sự kiện này dùng chung các bảng chiều Loại lược đồnày có thể được xem xét như là một tập các ngôi sao và vì vậy được gọi là lược
đồ chòm sao
Ví dụ về mô hình chòm sao
Trang 14Chương 2:
KỸ THUẬT PHÂN TÍCH DỮ LIỆU TRỰC TUYẾN
(OLAP) TRONG HỖ TRỢ RA QUYẾT ĐỊNH
OLAP (Online Analytical Processing)
− OLAP là một kỹ thuật sử dụng các thể hiện dữ liệu đa chiều gọi là các khối(cube) nhằm cung cấp khả năng truy xuất nhanh đến dữ liệu của kho dữ liệu.Tạo khối (cube ) cho dữ liệu trong các bảng chiều (dimension table) và bảng sựkiện (fact table) trong kho dữ liệu và cung cấp các khả năng thực hiện các truyvấn tinh vi, phân tích các ứng dụng client
− Kho dữ liệu và DataMart lưu trữ dữ liệu cho phân tích, còn OLAP là kỹ thuậtcho phép các ứng dụng client truy xuất hiệu quả những ứng dụng này OLAPcung cấp nhiều lợi ích cho người phân tích:
o Cung cấp mô hình dữ liệu đa chiều trực quan, cho phép dễ dàngchọn lựa, định hướng và khám phá dữ liệu
o Cung cấp ngôn ngữ truy vấn phân tích để khám phá các mối quan hệtrong dữ liệu kinh doanh phức tạp
o Dữ liệu được tính toán trước đối với các truy vấn thường xuyên làmcho thời gian trả lời rất nhanh
o Cung cấp các công cụ mạnh giúp người dùng tạo ra các khung nhìnmới của dữ liệu dựa trên một tập các hàm tính toán đặc biệt
− OLAP được đặt ra để xử lý các truy vấn liên quan đến lượng dữ liệu rất lớn mànếu cho thực thi các truy vấn này trong hệ thống OLTP (sử lý giao dịch trựctuyến) sẽ không cho kết quả hoặc sẽ làm mất rất nhiều thời gian
Trang 152.2 Đặc điểm của OLAP
− OLAP được biết đến là một phần của kho dữ liệu
− Cung cấp các báo cáo, các tiền tính toán, các đồ thị, biểu đồ
− Cho phép phân tích trực tuyến dữ liệu
− Thăm dò sự tương tác dữ liệu
− Cung cấp các giao diện đa dạng cho người dùng
− Cung cấp khả năng phân tích dữ liệu phức tạp bằng phương pháp đơn gỉan
2.3 Mô hình dữ liệu đa chiều
Khuynh hướng suy nghĩ của người quản lý kinh doanh: “nhiều chiều”
(multidimensionally) Ví dụ, khuynh hướng mô tả những gì mà công ty làm:
“Chúng tôi kinh doanh các sản phẩm trong nhiều thị trường khác nhau, và chúng tôi đánh giá hiệu quả thực hiện của chúng tôi qua thời gian”.
Người thiết kế Datawarehouse (DWH) thường lắng nghe cẩn thận và thêm vàocác nhấn mạnh đặc biệt:
“Chúng tôi kinh doanh các sản phẩm trong nhiều thị trường khác nhau, và chúng tôi đánh giá hiệu quả thực hiện của chúng tôi qua thời gian”.
Trang 16Minh họa khối dữ liệu đa chiềuKho dữ liệu và công cụ OLAP đều dựa trên mô hình dữ liệu đa chiều Môhình này xem xét dữ liệu dưới dạng một khối dữ liệu (data cube)
2.3.1 Từ các bảng và các bảng tính thành các khối dữ liệu:
Khối dữ liệu là gì? Một khối dữ liệu cho phép dữ liệu có thể được mô hìnhhóa và được xem xét theo nhiều chiều Khối dữ liệu được định nghĩa theo cácchiều (dimension) và các sự kiện (fact)
Nhìn chung, các chiều là các thực thể mà một tổ chức muốn giữ các bảngghi về các thực thể này Mỗi chiều có thể có một bảng kết hợp với nó, gọi là bảngchiều (dimension table) Bảng chiều sẽ chứa các thông tin sâu hơn về chiều Ví dụcác bảng chiều TIME(time_key, day, day_of_week,month, quarter, year) ;
BRANCH (branch_key, branch_name, branch_type)
ITEM (item_key, item_name, branch, type, supplier_key),…