Khóa luận Áp dụng kỹ thuật olap và kho dữ liệu trong dự báo tài chính

Tài liệu Khóa luận Áp dụng kỹ thuật olap và kho dữ liệu trong dự báo tài chính: 2 ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ Vũ Ngọc Anh ÁP DỤNG KỸ THUẬT OLAP VÀ KHO DỮ LIỆU TRONG DỰ BÁO TÀI CHÍNH KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY Ngành: Các hệ thống thông tin HÀ NỘI - 2010 3 ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ Vũ Ngọc Anh ÁP DỤNG KỸ THUẬT OLAP VÀ KHO DỮ LIỆU TRONG DỰ BÁO TÀI CHÍNH KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY Ngành: Các hệ thống thông tin Cán bộ hướng dẫn: TS. Nguyễn Hà Nam Cán bộ đồng hướng dẫn: Ths. Nguyễn Thu Trang HÀ NỘI - 2010 4 Lời cảm ơn Trước tiên tôi xin gửi lời cảm ơn và lòng biết ơn sâu sắc tới TS.Nguyễn Hà Nam và Ths.Nguyễn Thu Trang đã tận tình chỉ bảo và hướng dẫn tôi trong suốt quá trình thực hiện khóa luận tốt nghiệp. Tôi xin chân thành cảm ơn các thầy, các cô đã tạo cho tôi những điều kiện thuận lợi để học tập và nghiên cứu tại trường Đại Học Công Nghệ. Tôi xin cảm ơn các bạn trong nhóm làm “Data Warehouse và OLAP” đã cùng thảo luận và trao đổi và ...

pdf57 trang | Chia sẻ: haohao | Lượt xem: 1299 | Lượt tải: 1download
Bạn đang xem trước 20 trang mẫu tài liệu Khóa luận Áp dụng kỹ thuật olap và kho dữ liệu trong dự báo tài chính, để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
2 ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CƠNG NGHỆ Vũ Ngọc Anh ÁP DỤNG KỸ THUẬT OLAP VÀ KHO DỮ LIỆU TRONG DỰ BÁO TÀI CHÍNH KHỐ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY Ngành: Các hệ thống thơng tin HÀ NỘI - 2010 3 ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CƠNG NGHỆ Vũ Ngọc Anh ÁP DỤNG KỸ THUẬT OLAP VÀ KHO DỮ LIỆU TRONG DỰ BÁO TÀI CHÍNH KHỐ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY Ngành: Các hệ thống thơng tin Cán bộ hướng dẫn: TS. Nguyễn Hà Nam Cán bộ đồng hướng dẫn: Ths. Nguyễn Thu Trang HÀ NỘI - 2010 4 Lời cảm ơn Trước tiên tơi xin gửi lời cảm ơn và lịng biết ơn sâu sắc tới TS.Nguyễn Hà Nam và Ths.Nguyễn Thu Trang đã tận tình chỉ bảo và hướng dẫn tơi trong suốt quá trình thực hiện khĩa luận tốt nghiệp. Tơi xin chân thành cảm ơn các thầy, các cơ đã tạo cho tơi những điều kiện thuận lợi để học tập và nghiên cứu tại trường Đại Học Cơng Nghệ. Tơi xin cảm ơn các bạn trong nhĩm làm “Data Warehouse và OLAP” đã cùng thảo luận và trao đổi và giúp tơi rất nhiều trong quá trình thu thập tài liệu. Tơi xin gửi lời cảm ơn vơ hạn tới gia đình, bạn bè, những người thân yêu đã luơn bên cạnh động viên tơi trong suốt quá trình thực hiện khĩa luận. Tơi xin chân thành cảm ơn! Sinh viên Vũ Ngọc Anh 1 Mục lục Mục lục ....................................................................................................................... 1 Danh sách các hình ...................................................................................................... 3 Bảng từ viết tắt ............................................................................................................ 5 Lời mở đầu .................................................................................................................. 6 Chương 1. Giới thiệu kho dữ liệu và dữ liệu tài chính .................................................. 7 1.1. Dữ liệu trong lĩnh vực tài chính ...................................................................... 7 1.2. Kho dữ liệu (Data warehouse) ........................................................................ 8 1.2.1. Kho dữ liệu .............................................................................................. 8 1.2.2. Mục đích của kho dữ liệu ......................................................................... 9 1.2.3. Lợi ích của kho dữ liệu............................................................................. 9 1.2.4. Thành phần của kho dữ liệu ................................................................... 10 1.2.5. Cấu trúc của kho dữ liệu......................................................................... 11 1.2.6. Mơ hình thực thể trong kho dữ liệu ........................................................ 12 1.2.7. Các lĩnh vực ứng dụng của kho dữ liệu .................................................. 15 Chương 2. Kỹ thuật phân tích OLAP ......................................................................... 16 2.1. Giới thiệu OLAP .......................................................................................... 16 2.2. Mơ hình dữ liệu đa chiều .............................................................................. 16 2.3. Kiến trúc khối (Cube) của OLAP .................................................................. 18 2.4. So sánh OLAP và OLTP ............................................................................... 19 2.5. Các thành phần của OLAP ............................................................................ 20 2.6. Chuyển đổi dữ liệu từ OLTP tới OLAP ........................................................ 21 2.7. Các mơ hình lưu trữ hỗ trợ OLAP ................................................................. 22 2.7.1. Mơ hình Multidimentional OLAP (MOLAP) ......................................... 22 2.7.2. Mơ hình Relational OLAP (ROLAP) ..................................................... 23 2.7.3. Mơ hình Hybird OLAP (HOLAP) .......................................................... 24 2.7.4. So sánh các mơ hình ............................................................................... 25 Chương 3. Bộ cơng cụ Pentaho .................................................................................. 26 3.1 Tổng quan .................................................................................................... 26 3.2 Các khả năng BI của pentaho ........................................................................ 26 2 3.3 Những đặc tính và lợi ích .............................................................................. 29 Chương 4. Giới thiệu bài tốn triển khai trên Pentaho và kết quả đạt được ................ 33 4.1. Giới thiệu bài tốn ........................................................................................ 33 4.2. Thu thập,xử lý dữ liệu................................................................................... 33 4.3. Tạo data warehouse ...................................................................................... 36 4.4. Xử lý dữ liệu bằng kỹ thuật OLAP ............................................................... 42 4.4.1. Tạo cube ................................................................................................ 42 4.4.2. Analysis View ........................................................................................ 43 Kết luận ..................................................................................................................... 52 Tài liệu tham khảo ..................................................................................................... 53 3 Danh sách các hình Hình 1. Các thành phần của kho dữ liệu ....................................................................... 11 Hình 2. Mơ hình sao ...................................................................................................... 13 Hình 3. Mơ hình bơng tuyết .......................................................................................... 14 Hình 4. Mơ hình chịm sao ............................................................................................ 15 Hình 5. Mơ phỏng các chiều trong kinh doanh ............................................................. 17 Hình 6. Mơ hình dữ liệu MOLAP ................................................................................. 22 Hình 7. Mơ hình dữ liệu ROLAP .................................................................................. 23 Hình 8. Mơ hình dữ liệu HOLAP .................................................................................. 24 Hình 9. Cấu trúc Pentaho ............................................................................................... 26 Hình 10. Dữ liệu tỷ giá .................................................................................................. 33 Hình 11. Dữ liệu giá vàng ............................................................................................. 34 Hình 12. Dữ liệu giá dầu ............................................................................................... 35 Hình 13. Dữ liệu chỉ số VnIndex ................................................................................... 35 Hình 14. Dữ liệu tổng hợp ............................................................................................. 36 Hình 15. Mơ hình kho dữ liệu ....................................................................................... 37 Hình 16. Spoon workspace ............................................................................................ 37 Hình 17. Spoon nhập dữ liệu ......................................................................................... 38 Hình 18. Combination Lookup/Update ......................................................................... 38 Hình 19. Thay đổi thuộc tính ......................................................................................... 39 Hình 20. Kết nối cơ sở dữ liệu ....................................................................................... 39 Hình 21. Tạo bảng Dim_time ........................................................................................ 40 Hình 22. Tạo bảng dim_factor ....................................................................................... 40 Hình 23. Tạo Table Output ............................................................................................ 41 4 Hình 24. Tạo bảng fact_price ........................................................................................ 41 Hình 25. Nhập dữ liệu ................................................................................................... 42 Hình 26. Kết nối cơ sở dữ liệu ....................................................................................... 42 Hình 27. Kiến trúc Cube ................................................................................................ 43 Hình 28. Repository Login ............................................................................................ 43 Hình 29. Kết nối cơ sở dữ liệu ....................................................................................... 44 Hình 30. Khung làm việc Pentaho ................................................................................. 45 Hình 31. Chọn schema và cube ..................................................................................... 45 Hình 32. Dữ liệu schema và cube .................................................................................. 45 Hình 33. Nội dung phân tích ......................................................................................... 46 Hình 34. Chọn Measures ............................................................................................... 46 Hình 35. Chọn factor ..................................................................................................... 46 Hình 36. Chọn năm phân tích ........................................................................................ 47 Hình 37. Chọn chi tiết ngày tháng ................................................................................. 47 Hình 38. Chọn loại biểu đồ ............................................................................................ 48 Hình 39. Biểu đồ tỷ giá USD/VND ............................................................................... 48 Hình 40. Biểu đồ giá vàng ............................................................................................. 49 Hình 41. Biểu đồ giá dầu ............................................................................................... 49 Hình 42. Biểu đồ chỉ số VnIndex .................................................................................. 50 Hình 43. Biểu đồ giá vàng và giá dầu ........................................................................... 50 Hình 44. Biểu đồ tỷ giá và giá vàng .............................................................................. 51 Hình 45. Biểu đồ giá vàng và VNIndex ........................................................................ 51 5 Bảng từ viết tắt OLAP Online Analysis Processing MOLAP Multidimensional Online Analysis Processing ROLAP Relational Online Analysis Processing HOLAP Hybird Online Analysis Processing BI Business Intelligence OLTP OnLine Transaction Processing 6 Lời mở đầu Cùng với việc áp dụng rộng rãi cơng nghệ thơng tin vào trong 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àng nhiều.Vì vậy, yêu cầu thiết yếu đặt ra đối với các doanh nghiệp đĩ là việc khai thác các dữ liệu này một các hiệu quả để phục vụ cho việc kinh doanh ngày càng tốt hơn. Khĩa luận này với đề tài “Áp dụng kỹ thuật OLAP và kho dữ liệu trong báo cáo tài chính” giới thiệu về kho dữ liệu, phương pháp OLAP và ứng dụng trong phân tích biên động giá dầu, giá vàng và chỉ số VNIndex bằng cơng cụ Pentaho. Khĩa luận gồm bốn chương: Chương 1. Giới thiệu kho dữ liệu và dữ liệu tài chính giới thiệu về đặc điểm của dữ liệu tài chính, giới thiệu tổng quan về kho dữ liệu, cấu trúc kho dữ liệu, các thành phần của kho dữ liêu, cách thiết kế kho dữ liệu và ứng dụng của kho dữ liệu. Chương 2. Giới thiệu tổng quan về OLAP giới thiệu tổng quan về kỹ thuật OLAP, các mơ hình lưu trữ hỗ trợ kỹ thuật OLAP, ưu điểm và nhược điểm của các mơ hình. Các bước để chuyển dữ liệu từ OLTP sang OLAP. Chương 3. Giới thiệu bộ cơng cụ Pentaho giới thiệu tổng quan bộ cơng cụ Pentaho, kiến trúc, cơng nghệ, và các tiện ích của Pentaho. Chương 4. Giới thiệu bài tốn triển khai trên Pentaho và kết quả đạt được triển khai Pentaho trên một bài tốn thực, áp dụng kỹ thuật kho dữ liệu và kỹ thuật OLAP để thực hiện Phần kết luận tổng kết và tĩm lược những kết quả, đĩng gĩp chính của khĩa luận. 7 Chương 1. Giới thiệu kho dữ liệu và dữ liệu tài chính 1.1. Dữ liệu trong lĩnh vực tài chính Với đặc điểm tính tốn chính xác, nhanh chĩng, khách quan nên cơng nghệ thơng tin được áp dụng khá rộng rãi trong lĩnh vực tài chính từ rất sớm. Dữ liệu trong lĩnh vực tài chính cĩ đặc điểm sau: - Luơn luơn biến đổi - Dữ liệu phân tán - Giao dịch chồng chéo - Số lượng giao dịch lớn Do đĩ, cần cĩ một chiến lược lưu trữ dữ liệu một cách hiệu quả.Những hệ thống đáp ứng được các đặc điểm trên thuộc nhĩm hệ thống xử lý giao dịch trực tuyến OLTP (OnLine Transaction Processing)[4]. Các ứng dụng xử lý giao dịch trực tuyến – OLTP (OnLine Transaction Processing) là những ứng dụng giúp người dùng truy cập trực tiếp thơng tin theo hình thức ứng dụng Client/Server. OLTP bao gồm một dãy lệnh: thu nhận (gathering) dữ liệu đầu vào, xử lý (processing) dữ liệu, và cập nhật (updating) dữ liệu cũ với dữ liệu mới được nhập và xử lý. OLTP là phương thức hiệu quả khi người dùng muốn: - Xử lý các dữ liệu đơn với số lượng và tần số khơng thể ước lượng. - Truy cập tức thì vào dữ liệu đã được cập nhật, phản ánh các giao dịch trước đĩ. - Thay đổi dữ liệu tức thì để phản ánh giao dịch vừa xử lý. Các chức năng cơ bản của OLTP[4]: cùng với khả năng truy cập và cập nhật các dữ liệu chia sẻ, các hệ thống OLTP cịn hỗ trợ các user khả năng truy cập trực tuyến (online), khả năng truy cập tức thời (availability), khả năng phản hồi nhanh chĩng (response), và tiết kiệm chi phí đối với từng transaction (low cost). Để trả lời các câu hỏi đơn giản trong quá trình kinh doanh như doanh thu của tháng 8 này bao nhiêu? Tháng này bán được bao nhiêu sản phẩm… những sản phẩm về số liệu chi tiết được hệ thống OLTP trả lời 1 cách nhanh chĩng.Nhưng đối với các nhà quả lý cấp cáo trong doanh nghiệp, họ khơng yêu cầu những dữ liệu quá chi tiết như vậy. Họ yêu cầu muốn biết những thơng tin mang tính hoạch định và lãnh đạo ví dụ như: mặt hàng này đang bán chạy ở khu vực này liệu cĩ bán chạy ở khu vực khác khơng?...Nếu trả lời các câu hỏi này ở hệ thống OLTP thì sẽ rất khĩ và hiệu quả thấp vì dữ liệu của OLTP quá chi tiết, lưu trữ phân tán…Để giải quyết vấn đề này, hệ thống data warehouse (kho dữ liệu) ra đời cùng với các kỹ thuật OLAP, Data mining (khai phá dữ liệu) để cĩ thể giúp được người quản trị cấp cao trả lời các câu hỏi mà họ yêu cầu. 1.2. Kho dữ liệu (Data warehouse) 1.2.1. Kho dữ liệu Data warehouse - kho dữ liệu là 1 tập hợp thơng tin cơ bản trên máy vi tính mà chúng cĩ tính quyết định đến việc thực hiện thành cơng bước đầu trong cơng việc kinh doanh[1]. Một kho dữ liệu, gọi một cách chính xác hơn là kho thơng tin (information warehouse), 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 thơng tin cần thiết cho các nhà quản trị kinh doanh tại mọi cấp độ tổ chức - khơng những chỉ là những yêu cầu dữ liệu phức hợp, mà cịn là điều kiện thuận tiện nhất để đạt được việc lấy 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[9]. Một kho dữ liệu là một sự pha trộn của nhiều cơng nghệ, bao gồm các cơ sở dữ liệu đa chiều và mối quan hệ giữa chúng, kiến trúc chủ khách, giao diện người dùng đồ họa và nhiều nữa. Dữ liệu trong kho dữ liệu khơng giống dữ liệu của hệ điều hành là loại chỉ cĩ thể đọc nhưng khơng chỉnh sửa được. Hệ điều hành tạo ra, chỉnh sửa và xĩa những dữ liệu sản xuất mà những dữ liệu này cung cấp cho kho dữ liệu. Nguyên nhân chính cho sự phát triển một kho dữ liệu là hoạt động tích hợp dữ liệu từ nhiền nguồn khác nhau vào một kho dữ liệu đơn lẻ và dày đặc mà kho này cung cấp cho việc phân tích và ra quyết định trong cơng việc kinh doanh. Đối với một số cơng việc kinh doanh thơng tin là nguồn tài nguyên cĩ giá trị rất lớn thì một kho dữ liệu tương đối giống như một nhà kho chứa hàng. Hệ điều hành tạo 9 ra những phần dữ liệu và nạp chúng vào kho. Một số phần được tĩm tắt trong thành phần thơng tin và được cất vào kho. Người sử dụng kho dữ liệu đưa ra những yêu cầu và được cung cấp sản phẩm được tạo ra từ các thành phần và các phân đoạn được lưu trong kho. Một kho dữ liệu được xác định đúng hướng, hoạt động hiệu quả cĩ thể trở thành một cơng cụ cạnh tranh cĩ giá trị cao trong kinh doanh. 1.2.2. Mục đích của kho dữ liệu Mục tiêu chính của kho dữ liệu là đạt những mục tiêu sau: - 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ột cách hiệu quả và chính xác. - Tíc hợp dữ liệu và siêu dữ liệu từ nhiều nguồn khác nhau. Muốn đạt được các mục tiêu 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ên kết, tổ chức theo các chủ đề - Dùng trong các hệ thống hỗ trợ ra quyết định. 1.2.3. Lợi ích của kho dữ liệu Tạo ra những quyết định cĩ ảnh hưởng lớn. Một kho dữ liệu cho phép trích rút tài nguyên nhân lực và máy tính theo yêu cầu để cung cấp các câu truy 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. Điều này tạo ra sự tiết kiệm đáng kể. 10 Cĩ kho dữ liệu cũng trích rút tài nguyên khan hiếm của hệ thống sản xuất khi thực thi một chương trình quá lâu hoặc các báo cáo và các câu truy vấn phức hợp. Cơng việc kinh doanh trở nên thơng minh hơn. Tăng thêm chất lượng và tính linh hoạt của việc phân tích kinh doanh do phá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 được sắp xếp từ mức độ chi tiết của cơng việc kinh doanh cho đến mức độ cao hơn - mức độ tổng quát. Đảm bảo được dữ liệu chính xác và đáng tin cậy do đảm bảo được là trong kho dữ liệu chỉ chứa duy nhất dữ liệu cĩ chất lượng cao và ổn định (trusted data). Dịch vụ khách hàng được nâng cao. Một doanh nghiệp cĩ thể giữ gìn mối quan hệ với khách hàng tốt hơn do cĩ mối tương quan với dữ liệu của tất cả khách hàng qua một kho dữ liệu riêng. Tái sáng tạo những tiến trình kinh doanh. Sự cho phép phân tích khơng ngừng thơng tin kinh doanh thường cung cấp sự hiểu biết mọi mặt của phương thức kinh doanh do đĩ cĩ thể làm nảy sinh ra những ý kiến cho sự sáng tạo ra những tiến trình này lại. Chỉ khi xác định chính xác các nhu cầu từ kho dữ liệu thì mới giúp ta đánh giá được những hạn chế và mục tiêu kinh doanh một cách chính xác hơn. Tái sáng tạo hệ thống thơng tin. Một kho dữ liệu là nền tảng cho các yêu cầu dữ liệu trong mọi lĩnh vực kinh doanh, nĩ cung cấp một chi phí ảnh hưởng nghĩa là đưa ra thĩi quen cho cho cả hai sự chuẩn hĩa dữ liệu và sự chuẩn hĩa hoạt động của hệ điều hành theo chuẩn quốc tế. 1.2.4. Thành phần của kho dữ liệu Chi tiết hiện hành Trung tâm của kho dữ liệu là chi tiết hiện hành của nĩ. Đĩ là nơi mà phần lớn dữ liệu được lưu trữ. Chi tiết hiện hành đến trực tiếp từ hệ điều hành và cĩ thể được lưu trữ như là dữ liệu thơ hoặc như sự tập hợp của dữ liệu thơ. 11 Chi tiết hiện hành là phần lõi dữ liệu mức thấp nhất trong kho dữ liệu. Mọi thực thể dữ liệu trong chi tiết hiện hành là một bức ảnh chụp nhanh, tại một thời điểm, là sự minh họa khi dữ liệu chính xác. Chi tiết hiện hành là đặc trưng từ hai đến năm năm. Sự chính xác của chi tiết hiện hành xảy ra thường xuyên như là điều kiện cần thiết để cung cấp những yêu cầu trong kinh doanh. Hệ thống bản ghi Một hệ thống bản ghi là nguồn dữ liệu tốt nhất hoặc phải nhất (rightest data) dùng để nuơi dưỡng kho dữ liệu. Dữ liệu phải nhất là dữ liệu hợp thời nhất, đầy đủ nhất, chính xác nhất, và cĩ sự thích nghi về cấu trúc nhất trong kho dữ liệu. Dữ liệu phải nhất thường đĩng nhất đối với nguồn ghi nhận trong mơi trường sản xuất. Trong những trường hợp khác, một hệ thống bản ghi cĩ thể là một nơi dùng để chứa dữ liệu tổng hợp. 1.2.5. Cấu trúc của kho dữ liệu Một kho dữ liệu cĩ thể cĩ một vài phần của cấu trúc sau: Relational Data Store Data Marts and Cubes Clients Source Hình 1. Các thành phần của kho dữ liệu 12 Kho dữ liệu mức vật lý Cơ sở dữ liệu mức vật lý trong tất cả dữ liệu của kho dữ liệu được lưu trữ , theo cùng với metada và tiến trình xử lý logic cho việc lọc, tổ chức và đĩng gĩi dữ liệu, xử lý dữ liệu chi tiết. Kho dữ liệu mức logic Cũng chứa đựng metadata bao gồm những luật kinh doanh và xử lý logic cho việc lọc, tổ chức, đĩng gĩi và xử lý dữ liệu, nhưng khơng chứa đựng dữ liệu thật sự. Thay vào đĩ nĩ chứa đựng những thơng tin cần thiết để truy cập dữ liệu bất cứ nơi đâu. Kho dữ liệu thơng minh hay dữ liệu theo chủ đề (Data mart) Là tập con của một kho dữ liệu diện rộng. Điển hình là nĩ cung cấp những thành phần lớn (phân khu, vùng, chức năng,…). Nĩi tĩm lại, Data mart như là những phần chuyên biệt hĩa của kho dữ liệu. 1.2.6. 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. Tuy nhiên, mơ hình cơ sở dữ liệu ER này khơng thích hợp cho việc thiết kế kho dữ liệu vì phải truy vấn tới quá nhiều bảng khác nhau. Hầu hết các kho dữ liệu sử dụng mơ hình sao (star schema). Mơ hình này chỉ gồm duy nhất một bảng sự kiện và một bảng chiều (dimention) cho mỗi chiều. Trong bảng sự kiện sẽ cĩ các trường khĩa ngồi liên kết với khĩa chính của các bảng chiều. Ví dụ về mơ hình sao: 13 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. Mơ hình bơng tuyết (SnowFlake Schema) đưa ra giải pháp cho mơ hình sao khi bảng cĩ thuộc tính phân cấp. OrderNo OrderDate CustomerNo CustomerName CustomerAddress City OrderNo SalespersionID CustomerNo ProdNo DateKey CityName Quantity TotalPrice CityName State Country SalespersonID SalespersonName City Quota DateKey Date Month Year ProdNo ProdName ProdDescr Category CategoryDescr UnitPrice QOH Orders Custormers Salespersons Date Fact Table Products City Hình 2. Mơ hình sao 14 Điều này giúp cho vệc bảo trì các bảng chiều tốt hơn. Tuy nhiên cấu trúc mặc định trong sơ đồ sao của các bảng chiều cĩ thể thích hợp hơn khi duyệt các chiều. Sơ đồ chịm sao (fact constellation) là một ví dụ cho cấu trúc phức tạp khi cĩ nhiều hơn 1 bảng sự kiện. Mỗi sơ đồ sao cĩ thể xây dựng thành sơ đồ chịm sao (ví dụ bằng cách chia tách các lược đồ sao gốc thành các lược đồ sao mà mỗi chúng được mơ tả trên các cấp khác nhau của các chiều phân cấp). Các kiến trúc sơ đồ chịm sao bao gồm nhiều bảng sự kiện và được chia sẻ cho nhiều bảng chiều. OrderNo OrderDate Month Year OrderNo SalespersonID CustomerNo DateKey CityName ProdNo Quantity TotalPrice DateKey Date Month SalespersonID SalespersonName City Quota ProdNo ProdName ProdDescr Category UnitPrice QOH CustomerNo CustomerName CustomerAddress City CategoryName CategoryDescr CityName State Orders Customers Fact table Month Year Products Category Salesperson Date City State Hình 3. Mơ hình bơng tuyết 15 Hình 4. Mơ hình chịm sao 1.2.7. Các lĩnh vực ứng dụng của kho dữ liệu Các lĩnh vực hiện tại cĩ ứng dụng data warehouse bao gồm: - Thương mại điện tử. - Kế hoạch hĩa nguồn lực doanh nghiệp. - Quản lý quan hệ khách hàng. - Chăm sĩc sức khỏe. - Viễn thơng. 16 Chương 2. Kỹ thuật phân tích OLAP 2.1. Giới thiệu OLAP 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 khả năng thực hiện các truy vấn tinh vi và phân tích cho các ứng dụng client – theo Hari Mailvaganam [5]. Trong khi kho dữ liệu và data mart lưu trữ dữ liệu cho phân tích, thì OLAP là kỹ thuật cho phép các ứng dụng client truy xuất hiệu quả dữ liệu này. OLAP cung cấp nhiều lợi ích cho người phân tích, cho ví dụ như: - Cung cấp mơ hình dữ liệu đa chiều trực quan cho phép dễ dàng lựa chọn, định hướng và khám phá dữ liệu. - Cung cấp một ngơn ngữ truy vấn phân tích, cung cấp sức mạnh để khám phá các mối quan hệ trong dữ liệu kinh doanh phức tạp. - Dữ liệu được tính tốn trước đối với các truy vấn thường xuyên nhằm làm cho thời gian trả lời rất nhanh đối với các truy vấn đặc biệt. - Cung cấp các cơng cụ mạnh giúp người dùng tạo các khung nhìn mới của dữ liệu dựa trên một tập các hàm tính tố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ẽ khơng thể cho kết quả hoặc sẽ mất rất nhiều thời gian. 2.2. Mơ hình dữ liệu đa chiều Các nhà quản lý kinh doanh cĩ khuynh hướng suy nghĩ theo “nhiều chiều” (multidimensionally). Ví dụ như họ cĩ khuynh hướng mơ tả những gì mà cơng ty làm như sau: “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”. Những người thiết kế kho dữ liệu thường lắng nghe cẩn thận những từ đĩ và họ thêm vào những nhấn mạnh đặc biệt của họ như: “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”. 17 Suy nghĩ một cách trực giác, việc kinh doanh như một khối (cube) dữ liệu, với các nhãn trên mỗi cạnh của khối (xem hình bên dưới). Các điểm bên trong khối là các giao điểm của các cạnh. Với mơ tả kinh doanh ở trên, các cạnh của khối là Sản phẩm, Thị trường, và Thời gian. Hầu hết mọi người đều cĩ thể nhanh chĩng hiểu và tưởng tượng rằng các điểm bên trong khối là các độ đo hiệu quả kinh doanh mà được kết hợp giữa các giá trị Sản phẩm, Thị trường và Thời gian [5]. Thị trường Thời gian Sản phẩm Hình 5. Mơ phỏng các chiều trong kinh doanh Một khối dữ liệu (datacube) thì khơng nhất thiết phải cĩ cấu trúc 3 chiều (3-D), nhưng về cơ bản là cĩ thể cĩ N chiều (N-D). Những cạnh của khối được gọi là các chiều (dimensions), mà đĩ là các mặt hoặc các thực thể ứng với những khía cạnh mà tổ chức muốn ghi nhận. Mỗi chiều cĩ thể kết hợp với một bảng chiều (dimension table) nhằm mơ tả cho chiều đĩ. Ví dụ, một bảng chiều của Sản phẩm cĩ thể chứa những thuộc tính như Ma_sanpham, Mo_ta, Ten_sanpham, Loai_SP,… mà cĩ thể được chỉ ra bởi nhà quản trị hoặc các nhà phân tích dữ liệu. Với những chiều khơng được phân loại, như là Thời gian, hệ thống kho dữ liệu sẽ cĩ thể tự động phát sinh tương ứng với bảng chiều (dimension table) dựa trên loại dữ liệu. Cần nĩi thêm rằng, chiều Thời gian trên thực tế cĩ ý nghĩa đặc biệt đối với việc hỗ trợ quyết định cho các khuynh hướng phân tích. Thường thì nĩ được mong muốn cĩ một vài tri thức gắn liền với lịch và những mặt khác của chiều thời gian. Hơn nữa, một khối dữ liệu trong kho dữ liệu phần lớn được xây dựng để đo hiệu quả của cơng ty. Do đĩ một mơ hình dữ liệu đa chiều đặc thù được tổ chức xung quanh một chủ đề mà được thể hiện bởi một bảng sự kiện (fact table) của nhiều độ đo số học (là các đối tượng của phân tích). Ví dụ, một bảng sự kiện cĩ thể chứa số mặt hàng bán, thu nhập, tồn kho, ngân sách,… Mỗi độ đo số học phụ thuộc vào một tập các chiều cung cấp ngữ cảnh cho độ đo đĩ. Vì thế, các chiều kết hợp với nhau được xem như xác định duy nhất độ đo, là một giá trị trong khơng gian đa chiều. Ví dụ như một kết hợp 18 của Sản phẩm, Thời gian, Thị trường vào 1 thời điểm là một độ đo duy nhất so với các kết hợp khác. Các chiều được phân cấp theo loại. Ví dụ như chiều Thời gian cĩ thể được mơ tả bởi các thuộc tính như Năm, Quý, Tháng và Ngày. Mặt khác, các thuộc tính của một chiều cĩ thể được tổ chức vào một lưới mà chỉ ra một phần trật tự của chiều. Vì thế, cũng với chiều Thời gian cĩ thể được tổ chức thành Năm, Quý, Tháng, Tuần và Ngày. Với sự sắp xếp này, chiều Thời gian khơng cịn phân cấp vì cĩ những tuần trong năm cĩ thể thuộc về nhiều tháng khác nhau. Vì vậy, nếu mỗi chiều chứa nhiều mức trừu tượng, dữ liệu cĩ thể được xem từ nhiều khung nhìn linh động khác nhau. Một số thao tác điển hình của khối dữ liệu như roll-up (tăng mức độ trừu tượng), drill-down (giảm mức độ trừu tượng hoặc tăng mức chi tiết), slice and dice (chọn và chiếu), và pivot (định hướng lại khung nhìn đa chiều của dữ liệu), cho phép tương tác truy vấn và phân tích dữ liệu rất tiện lợi. Những thao tác đĩ được biết như Xử lý phân tích trực tuyến (OnLine Analytical Processing – OLAP). Những nhà ra quyết định thường cĩ những câu hỏi cĩ dạng như “tính tốn và xếp hạng tổng số lượng hàng hố bán được theo mỗi quốc gia (hoặc theo mỗi năm)”. Họ cũng muốn so sánh hai độ đo số học như số lượng hàng bán và ngân sách được tổng hợp bởi cùng các chiều. Như vậy, một đặc tính để phân biệt của mơ hình dữ liệu đa chiều là nĩ nhấn mạnh sự tổng hợp của các độ đo bởi một hoặc nhiều chiều, mà đĩ là một trong những thao tác chính yếu để tăng tốc độ xử lý truy vấn. 2.3. Kiến trúc khối (Cube) của OLAP Đối tượng chính của OLAP là khối (cube), một thể hiện đa chiều của dữ liệu chi tiết và tổng hợp. Một khối bao gồm một nguồn dữ liệu (Data source), các chiều (Dimensions), các độ đo (Measures) và các phần dành riêng (Partitions). Các khối được thiết kế dựa trên yêu cầu phân tích của người dùng. Một kho dữ liệu cĩ thể hỗ trợ nhiều khối khác nhau như khối Bán hàng, khối Bảng kiểm kê… Dữ liệu nguồn của một khối chỉ ra nơi chứa kho dữ liệu cung cấp dữ liệu cho khối. Các chiều (dimension) được ánh xạ từ các thơng tin của các bảng chiều (dimension table) trong kho dữ liệu vào các mức phân cấp, ví dụ như chiều Địa lý thì gồm các mức như Lục địa, Quốc gia, Tỉnh-Thành phố. Các chiều cĩ thể được tạo một cách độc lập và cĩ thể chia sẻ giữa các khối nhằm xây dựng các khối dễ dàng và để chắc chắn rằng thơng tin tổng hợp cho phân tích luơn ổn định. Ví dụ, nếu một chiều chia sẻ một 19 phân cấp sản phẩm và được sử dụng trong tất cả các khối thì cấu tạo của thơng tin tổng hợp về sản phẩm sẽ ổn định giữa các khối sử dụng chiều đĩ. Một chiều ảo (virtual dimension) là một dạng đặc biệt của chiều mà ánh xạ các thuộc tính từ các thành viên (member) của một chiều khác để sau đĩ cĩ thể được sử dụng trong các khối. Ví dụ, một chiều ảo của thuộc tính kích thước sản phẩm cho phép một khối (cube) tổng hợp dữ liệu như số lượng sản phẩm bán được theo kích thước, hoặc như số lượng áo bán được theo kiểu và theo kích thước. Các chiều ảo (virtual dimension) và các thuộc tính thành viên được đánh giá là cần thiết cho các truy vấn và chúng khơng địi hỏi phải cĩ các khối lưu trữ vật lý. Các độ đo (measure) xác định các giá trị số từ bảng sự kiện (fact table) mà được tổng hợp cho phân tích như giá bán, chi phí hoặc số lượng bán. Các phần dành riêng (partition) là các vật chứa lưu trữ đa chiều, giữ dữ liệu của khối. Mỗi khối chứa ít nhất một partition, và dữ liệu của khối cĩ thể kết hợp từ nhiều partition. Mỗi partition cĩ thể lấy dữ liệu một nguồn dữ liệu khác nhau và cĩ thể lưu trong một vị trí riêng biệt (separate). Dữ liệu của một partition cĩ thể được cập nhật độc lập với các partition khác trong một khối. Ví dụ, dữ liệu của một khối cĩ thể được chia theo thời gian, với một partition chứa dữ liệu của năm hiện hành, một partition khác chứa dữ liệu của năm trước, và một partition thứ ba chứa tất cả dữ liệu của các năm trước nữa. Các partition của một khối cĩ thể được lưu trữ độc lập trong các cách thức khác nhau với các mức độ tổng kết khác nhau. Các partition khơng thể hiện đối với người dùng, đối với họ một khối (cube) là một đối tượng đơn, và chúng cung cấp các tuỳ chọn đa dạng để quản lý dữ liệu OLAP. Một khối ảo (virtual cube) là một khung nhìn luận lý (logic) của các phần chia của một hoặc nhiều khối. Một khối ảo cĩ thể được sử dụng để nối (join) các khối khác nhau để chia sẻ một chiều chung nào đĩ, ví dụ như cĩ thể kết giữa khối Bán hàng và khối Kho nhằm các mục đích phân tích đặc biệt nào đĩ trong khi duy trì các khối tách biệt cho đơn giản. Các chiều (dimension) và các độ đo (measure) cĩ thể được chọn từ các khối được kết để thể hiện trong khối ảo. 2.4. So sánh OLAP và OLTP Đặc trưng của các ứng dụng OLTP (On-Line Transaction Processing) là các tác vụ xử lý tự động ghi chép dữ liệu xử lý tác vụ của một tổ chức như ghi nhận đơn đặt hàng và các giao dịch ngân hàng (chúng là những cơng việc hàng ngày của tổ chức thương mại) mà cần phải đọc hoặc cập nhật một vài mẩu tin dựa trên khố chính của chúng[5]. 20 Những tác vụ đĩ cĩ cấu trúc, được lặp lại, bao gồm các giao dịch ngắn, tối giản và tách biệt, yêu cầu dữ liệu chi tiết và mới cập nhật. Các cơ sở dữ liệu tác nghiệp cĩ xu hướng từ vài trăm megabyte đến hàng gigabyte kích thước và chỉ lưu trữ các dữ liệu hiện hành. Tính nhất quán và khả năng phục hồi của cơ sở dữ liệu là then chốt, và tối đa thơng lượng giao dịch là thước đo chính yếu. Vì thế cơ sở dữ liệu được thiết kế để tối thiểu các xung đột trùng lặp. Cịn kho dữ liệu, mục tiêu là hỗ trợ quyết định cho các nhà quản lý. Tính chi tiết và riêng lẻ của các mẩu tin thì ít quan trọng hơn tính lịch sử, tổng kết và hợp nhất của dữ liệu. Do đĩ, kho dữ liệu thường chứa dữ liệu hợp nhất từ một hoặc nhiều cơ sở dữ liệu tác nghiệp và được thu thập qua một thời gian dài. Kết quả là kích thước kho dữ liệu cĩ khuynh hướng từ vài trăm gigabyte đến hàng terabyte so với các cơ sở dữ liệu tác nghiệp. Kho dữ liệu hỗ trợ các truy vấn phức tạp với thời gian hồi đáp nhanh, các truy vấn phức tạp cĩ thể truy xuất hàng triệu mẩu tin và thực hiện nhiều lần các thao tác quét, kết và tổng hợp. Đối với kho dữ liệu, số lượng truy vấn đưa vào và thời gian hồi đáp quan trọng hơn số lượng giao dịch đưa vào. Mà OLAP là một trong những cơng cụ cho phép thực hiện hiệu quả các truy vấn này. Căn cứ vào đĩ, các cơ sở dữ liệu tác nghiệp được xây dựng để hỗ trợ tốt các tác vụ OLTP, vì thế nếu cố gắng thực thi các truy vấn OLAP phức tạp đối với các cơ sở dữ liệu tác nghiệp sẽ cho kết quả là hiệu quả thực hiện khơng thể chấp nhận được. 2.5. Các thành phần của OLAP Những thành phần mà OLAP sử dụng để thực hiện các dịch vụ bao gồm: - Nguồn dữ liệu: Các cơ sở dữ liệu OLTP và các nguồn dữ liệu hợp lệ khác chứa các dữ liệu cĩ thể chuyển đổi thành dữ liệu OLAP trong kho lưu trữ. - Kho trung gian: là nơi lưu trữ và xử lý dữ liệu được tập hợp, sau đĩ được sắp xếp, sàng lọc, chuyển đổi thành dữ liệu OLAP hữu ích. - Máy chủ lưu trữ: Các máy tính chạy cơ sở dữ liệu liên kết chứa các kho dữ liệu cho kho lưu trữ, và các máy chủ quản lý dữ liệu OLAP (warehouse server). - Ứng dụng thơng minh: Các bộ cơng cụ và ứng dụng thực hiện truy vấn dữ liệu OLAP và cung cấp các báo cáo và thơng tin cho người ra quyết định của doanh nghiệp (Business Intelligence). - Siêu dữ liệu: Các đối tượng như các bảng biểu trong cơ sở dữ liệu OLTP, các khối trong kho lưu trữ dữ liệu, và các bản ghi mà ứng dụng tham chiếu tới các đoạn dữ liệu khác nhau. 21 2.6. Chuyển đổi dữ liệu từ OLTP tới OLAP Để chuyển đổi dữ liệu OLTP sang dữ liệu OLAP trong kho dữ liệu được thực hiện thơng qua các qui trình sau: - Hợp nhất dữ liệu: tất cả các dữ liệu liên quan tới các mục đặc trưng (sản phẩm, khách hàng, hay nhân viên) phải cĩ khả năng hợp nhất từ nhiều hệ thống OLTP tới một hệ thống OLAP đơn. Quy trình hợp nhất phải giải quyết được sự khác nhau về mã hố giữa các hệ thống OLAP, phù hợp với các dữ liệu chung được sử dụng ở cả hai hệ thống cĩ thể bằng cách so sánh các trường tương tự, cĩ thể biến đổi dữ liệu lưu trữ từ nhiều loại dữ liệu khác nhau trong mỗi hệ thống OLTP thành một loại dữ liệu duy nhất được sử dụng trong hệ thống OLAP.Các hệ thống cung cấp các dữ liệu đầu vào cho một hệ thống OLAP khơng nhất thiết phải là các hệ thống OLTP truyền thống mà cĩ thể được lưu trữ ở nhiều dạng hợp lệ, chẳng hạn như các bản ghi Microsoft Excel trong một tệp được chia sẻ. - Quét dữ liệu: Việc hợp nhất dữ liệu OLTP vào một kho dữ liệu (data warehouse) tạo điều kiện quét dữ liệu. Một số hệ thống OLTP đánh vần các đề mục khác nhau, hoặc quá trình hợp nhất cĩ thể gây ra các lỗi chính tả. Sự khơng thống nhất này phải được chỉnh sửa trước khi dữ liệu cĩ thể được nhập vào kho lưu trữ phục vụ cho hệ thống OLAP. - Tập hợp dữ liệu: Dữ liệu OLTP ghi nhận tất cả các chi tiết của transaction. OLAP chỉ truy vấn những dữ liệu tổng kết cần thiết, hoặc các dữ liệu được tập hợp bằng một số quy tắc nhất định. Ví dụ, một truy vấn lấy tổng doanh thu hàng tháng cho mỗi sản phẩm trong năm trước sẽ chạy nhanh hơn nếu cơ sở dữ liệu chỉ cĩ các dịng tổng kết doanh thu hàng ngày (hoặc từng giờ) của mỗi sản phẩm, so với truy vấn phải quét tất cả các bản ghi chi tiết trong vịng 1 năm. Mức độ tập hợp dữ liệu trong kho lưu trữ phụ thuộc vào số lượng các yếu tố thiết kế (giống như lập trình hướng đối tượng). - Sắp xếp dữ liệu: Khi dữ liệu OLTP được chuyển vào kho lưu trữ, chúng sẽ phải được biến đổi theo cách sắp xếp hợp lý hơn đối với nhu cầu phân tích nhằm đưa ra quyết định và hạn chế tiêu phí thời gian. Quá trình thiết lập kho lưu trữ bao gồm cả việc sắp xếp lại dữ liệu OLTP, lưu trong các bảng biểu liên kết, thành dữ liệu OLAP được lưu trong các khối đa chiều. Dữ liệu sau đĩ được tải vào kho lưu trữ. - Truy cập và phân tích dữ liệu: Khi dữ liệu đã được tải vào kho lưu trữ, OLAP cung cấp khả năng truy cập, xem, và phân tích dữ liệu với độ linh hoạt và hiệu quả 22 cao. OLAP trình bày dữ liệu thơng qua mơ hình dữ liệu tự nhiên và trực quan, giúp cho người sử dụng xem và hiểu một cách tốt nhất những thơng tin trong kho lưu trữ. Từ đĩ cho phép người sử dụng nhận biết được giá trị của dữ liệu. 2.7. Các mơ hình lưu trữ hỗ trợ OLAP Dịch vụ OLAP hỗ trợ nhiều mơ hình lưu trữ dữ liệu khác nhau, mỗi mơ hình cĩ các ưu và khuyết điểm riêng, chúng được sử dụng tuỳ theo mục đích khai thác. 2.7.1. Mơ hình Multidimentional OLAP (MOLAP) Mơ hình OLAP đa chiều (MOLAP) lưu trữ dữ liệu cơ sở (là dữ liệu từ các bảng của kho dữ liệu hoặc data mart) và thơng tin tổng hợp (là các độ đo được tính tốn từ các bảng) trong các cấu trúc đa chiều gọi là các khối (cube). Các cấu trúc này được lưu bên ngồi cơ sở dữ liệu data mart hoặc kho dữ liệu. Lưu trữ các khối (cube) trong cấu trúc MOLAP là tốt nhất cho các truy vấn tổng hợp dữ liệu thường xuyên mà cần thời gian hồi đáp nhanh. Ví dụ, tổng sản phẩm bán được của tất cả các vùng theo quý. Ưu điểm của mơ hình MOLAP: - Thực thi nhanh: khối trong MOLAP thu hồi dữ liệu nhanh và tối ưu hĩa hoạt động[15]. - Cĩ thể thực hiện các phép tốn phức tạp: mọi tính tốn được tạo ra trước khi khối tạo ra [15]. Mysql MOLAP data Oracle Other Dữ liệu trong mơi trường OLAP Hình 6. Mơ hình dữ liệu MOLAP 23 Nhược điểm của mơ hình MOLAP: - Giới hạn lượng dữ liệu cĩ thể xử lý: Bởi vì tất cả các tính tốn được sinh ra khi xây dựng khối, do đĩ nĩ khơng thể bao gồm lượng dữ liệu lớn trong khối của chính nĩ. Điều này khơng cĩ nghĩa là dữ liệu từ khối khơng thể được xây dựng từ một lượng dữ liệu lớn. Điều này cĩ thể, nhưng nĩ chỉ tĩm tắt thơng tin chứa trong chính nĩ [15]. - Yêu cầu đầu tư thêm: Cơng nghệ tạo khối thường được độc quyền và khơng tồn tại trong tổ chức nào. Vì vậy, để sử dụng cơng nghệ MOLAP cần phải đầu tư bổ sung thêm vốn và nhân lực [15]. 2.7.2. Mơ hình Relational OLAP (ROLAP) Mơ hình OLAP quan hệ (ROLAP) lưu trữ dữ liệu cơ sở và thơng tin tổng hợp trong các bảng quan hệ. Các bảng này được lưu trữ trong cùng cơ sở dữ liệu như là các bảng của data mart hoặc kho dữ liệu. Hình 7. Mơ hình dữ liệu ROLAP Lưu trữ các khối trong cấu trúc ROLAP là tốt nhất cho các truy vấn dữ liệu khơng thường xuyên. Ví dụ như nếu 80% người dùng truy vấn chỉ dữ liệu trong vịng một năm trở lại đây, các dữ liệu cũ hơn một năm sẽ được đưa vào một cấu trúc ROLAP để giảm khơng gian đĩa bị chiếm dụng, hơn nữa cịn để loại trừ dữ liệu trùng lặp. Ưu điểm của mơ hình ROLAP: - Cĩ thể xử lý lượng dữ liệu lớn: Kích thước giới hạn của ROLAP phụ thuộc vào kích thước của cơ sở dữ liệu ngồn. Nĩi cách khác, bản thân cơng nghệ ROLAP khơng cĩ giới hạn về kích thước dữ liệu [15]. 24 - Cĩ thể vận dụng chức năng vốn cĩ của cơ sở dữ liệu quan hệ: Cơ sở dữ liệu quan hệ thường đi kèm với rất nhiều chức năng. Cơng nghệ ROLAP cĩ thể tận dụng các chức năng này, tiết kiệm chi phí [15]. Nhược điểm của ROLAP: - Hiệu suất xử lý thấp: Mỗi báo cáo ROLAP thường được tập hợp dữ liệu từ nhiều bảng khác nhau, điều này sẽ làm cho hiệu quả của ROLAP thấp khi dữ liệu lớn, phân tán [15]. - Giới hạn bởi chức năng của SQL: Bởi vì cơng nghệ ROLAP chủ yếu dựa vào việc tạo ra các câu lệnh SQL để truy vấn cơ sở dữ liệu. Mà báo cáo dựa trên truy vấn SQL trong một số trường hợp khơng đạt được hiệu quả mong muốn. Các nhà phát triển đã khắc phục điều này bằng các tạo ra các cơng cụ hỗ trợ ngồi giúp người dùng tạo ra các chức năng của riêng họ [15]. 2.7.3. Mơ hình Hybird OLAP (HOLAP) Mơ hình OLAP lai (HOLAP) là sự kết hợp giữa MOLAP và ROLAP. Hình 8. Mơ hình dữ liệu HOLAP Lưu trữ các khối (cube) trong cấu trúc HOLAP là tốt nhất cho các truy vấn tổng hợp dữ liệu thường xuyên dựa trên một lượng lớn dữ liệu cơ sở. Ví dụ, chúng ta sẽ lưu trữ dữ liệu bán hàng theo hàng quý, hàng năm trong cấu trong MOLAP và dữ liệu hàng tháng, hàng tuần và hàng ngày trong cấu trúc ROLAP[15]. Lợi ích của việc lưu trữ trong cấu trúc HOLAP là: - Lấy dữ liệu trong khối (cube) nhanh hơn bằng cách sử dụng xử lý truy vấn tốc độ cao của MOLAP. - Tiêu thụ ít khơng gian lưu trữ hơn MOLAP. - Tránh trùng lặp dữ liệu. 25 2.7.4. So sánh các mơ hình Bảng sau so sánh tổng hợp ba mơ hình lưu trữ hỗ trợ OLAP: MOLAP ROLAP HOLAP Lư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 Tiêu thụ khơng gian lưu trữ Nhiều Thấp Trung bình Chi phí bảo trì Cao Thấp Trung bình 26 Chương 3. Bộ cơng cụ Pentaho 3.1 Tổng quan Bộ cơng cụ Pentaho open BI cung cấp một cái nhìn tồn cảnh về khả năng kinh doanh thơng minh (BI) của doanh nghiệp bao gồm: lập biểu báo, phân tích, biểu đồ, tích hợp dữ liệu, và là một hệ BI mã nguồn mở phổ biến nhất thế giới. Sản phẩm của Pentaho được các doanh nghiệp hàng đầu sử dụng như: MySql, Motorola, Terra Industries, DivX…[6] Bộ cơng cụ pentaho cĩ các cơng cụ: - Report designer - Design studio - Aggregation designer - Metadata editer - Pentaho data integartion - Schema wordbench Cấu trúc của Pentaho: Hình 9. Cấu trúc Pentaho 3.2 Các khả năng BI của pentaho 27 Pentaho giúp người dùng: Báo cáo: Các tổ chức sử dụng báo cáo từ nhiều nguồn nên báo cáo là cốt lõi và được khai thác đầu tiên trong kinh doanh thơng minh. Báo cáo Pentaho cho phép các doanh nghiệp truy cập, định dạng và phân phối thơng tin dễ dàng đến nhân viên, khách hàng và các đối tác. - Linh hoạt trong triển khai từ những báo cáo đơn đến các báo cáo dạng web tích hợp trong kinh doanh thơng minh của doanh nghiệp. - Hỗ trợ nhiều nguồn dữ liệu như OLAP, hay nguồn dữ liệu dựa trên XML. - Xuất dữ liệu linh hoạt ra PDF, HTML, Microsoft Excel, Rich Text Format, hay text thuần túy. - Wizard hỗ trợ thiết kế báo cáo dễ dàng và nhanh chĩng. - Phiên bản chuyên nghiệp với nhiều chức năng như phân nhĩm, đăng ký, tích hợp thư mục, kiểm duyệt … Phân tích: Pentaho Analysis là một cơng cụ phân tích đắc lực giúp người dùng đưa ra những quyết định cĩ hiệu quả nhất. Ví dụ: Báo cáo cho biết tình hình bán cĩ khuynh hướng giảm hơn so với mong đợi thì các tri thức dễ dàng phát hiện ra nguyên nhân vấn đề bằng cách đặt các câu hỏi sau: - Vấn đề ảnh hưởng đến một dịng sản phẩm hay một khu vực nào đĩ? - Sự khác nhau giữa sự phối hợp này với những phối hợp khác mà khơng cĩ vấn đề là gì? - Vấn đề liên quan với những hàng bán ở đĩ là gì? Những chiến dịch tiếp thị? Hay cái gì khác? Pentaho Analysis giúp trả lời những câu hỏi kinh doanh bằng cách: - Giúp người dùng dễ dàng khai thác thơng tin kinh doanh bằng cách kéo, thả, xem chi tiết hay lập bảng kiểm tra chéo dữ liệu. - Trả lời nhanh các truy vấn phân tích phức tạp. - Giải quyết các câu hỏi phức tạp nhanh chĩng. 28 - Hỗ trợ các khả năng tiên tiến bao gồm báo cáo tích hợp, siêu dữ liệu, biểu đồ thơng qua việc tích hợp với các sản phẩm khác trong bộ Pentaho. Biểu đồ: Pentaho Dashboards giúp người quản trị hiểu tường tận sự việc bên trong ngay lập tức từ sự thực hiện cá nhân, phịng ban, hay doanh nghiệp. Bằng phép đo trên giao diện trực quan, Pentaho Dashboards cung cấp cho nhà doanh nghiệp thơng tin thực giúp họ hiểu biết và cải thiện cơng việc. Pentaho Dashboards hỗ trợ tính trực quan bằng cách cung cấp: - Khả năng quản lý các phép đo tồn diện cho phép định nghĩa và theo dõi những đo đạc đáng chú ý ở mức độ cá nhân, phịng ban hay doanh nghiệp. - Hiển thị trực quan phong phú giúp nhà kinh doanh cĩ thể thấy ngay những cái nào đang đi đúng hướng và cái nào cần chú ý. - Tích hợp báo cáo và phân tích để người sử dụng cĩ thể khai thác tận gốc các báo cáo và phân tích để hiểu những nhân tố đưa đến thành cơng hay thất bại. - Cổng tích hợp dễ dàng chuyển các phép đo đạc trong kinh doanh liên quan với số lượng lớn người sử dụng, tích hợp thẳng vào trong ứng dụng của họ. - Tích hợp báo động để liên tục theo dõi những ngoại lệ và thơng báo cho người sử dụng biết. Khai phá dữ liệu: - Những mối quan hệ tìm ẩn trong dữ liệu cĩ thể được dùng để tối ưu hĩa những qui trình nghiệp vụ và dự đốn những kết quả tương lai. - Cung cấp một phạm vi tiên tiến đầy đủ các giải thuật khai thác dữ liệu. - Hiển thị kết quả cho người dùng với định dạng dễ hiểu. Quy trình: - Qui trình kinh doanh tự động và hợp lý đưa ra các kết quả cĩ bảo chứng, hiệu quả và cĩ thể báo cáo với nhiều mục đích khác nhau. 29 - Liên kết trực tiếp các phép đo đạc với tiến trình. Đẩy mạnh cải tiến chu trình kinh doanh liên tục. Từ việc báo cáo dựa theo các phép đo thơng qua sự thay đổi trong kinh doanh đến việc báo cáo những kết quả thay đổi đĩ, và lặp lại quá trình để tối ưu hĩa hơn nữa. 3.3 Những đặc tính và lợi ích Cung cấp hiểu biết tường tận giữa các mẫu và mối quan hệ ẩn trong dữ liệu của bạn: Một ví dụ điển hình của việc khai thác dữ liệu là một người bán lẻ phát hiện ra mối quan hệ giữa việc bán tả lĩt và bia vào những chiều chủ nhật – Hai sản phẩm này chẳng cĩ quan hệ gì với nhau. Nhưng nếu tình cờ nhữnhg ơng chồng phát hiện trong kho hàng cĩ bia thì họ sẽ nhặt bia lên thay vì tả lĩt – điều này sẽ khơng được phát hiện trước khi khai thác dữ liệu. Cho phép bạn khai thác những tương quan để cải thiện cơng việc Tiếp tục ví dụ trên, những người bán lẻ thường hoạt động trong những mối quan hệ họ cĩ bằng cách dùng chiến thuật liên kết các hạn mục với nhau để kích thích sự mua hàng. Các doanh nghiệp cĩ thể thu lợi từ theo cách làm giống nhau – sử dụng những kiểu mẫu được khám phá mới nhất và những tương quan như cơ sở để thi hành cải thiện hiệu quả và hiệu lực. Đúc kết các bí quyết cho tương lai “Khơng học từ quá khứ chắc chắn sẽ bị vấp lại” là một lời trích nổi tiếng từ nhà triết học George Santayana. Việc khai thác dữ liệu cĩ khả năng dự đốn những hậu quả dựa vào dữ liệu đã cĩ để cải thiện đáng kể chất lượng và những hậu quả trước khi đưa ra quyết định. Lấy ví dụ đơn giản, là người quyết định tốt nên kết hợp các giai đọan mà khách hàng thanh tốn đúng hẹn và lợi dụng những thơng tin hữu ích này để đưa ra những quyết định. Cho phép đưa các khuyến cáo vào trong ứng dụng Bạn cĩ thể dùng kết quả khai thác dữ liệu để trình bày một bản tổng kết thu chi đơn giản và đua ra những khuyến cáo vào họat động ứng dụng. Ví dụ trên màn hình thanh tốn bạn cĩ thể thêm câu: “Dựa vào số liệu mới cĩ đến 85% khả năng khách hàng này trả chậm, vì thế hĩa đơn này được đề nghị trả trước 50%”. Việc lập báo cáo 30 dựa trên kết quả tổng thể giống như thời gian thu hồi tiền hàng tồn đọng (DSO) giúp bạn đo được sự tiến triển trong kinh doanh dựa vào các đề xuất cho phép hay khơng cho phép để bạn tinh chỉnh mơ hình và các khuyến cáo cĩ hiệu quả tối ưu, cho phép bạn tận dụng triệt để các phạm vi thuật tốn. Khơng cĩ thuật tốn nào tối ưu cho tất cả các tình huống. Vì vậy bạn nên thử ở các phạm vi để tìm ra thụât tốn phù hợp nhất cho dữ liệu của bạn. Nếu bạn cĩ nhiều thuật tốn hợp lý bạn cĩ thể dùng tất cả – Ví dụ: “Dựa trên sự phân tích của 3 mơ hình dự đĩan thì khả năng khách hàng này trả chậm là: Mơ hình A: 95% (96% đúng), Mơ hình B: 89% (92% đúng), Mơ hình C: 76% (97% đúng)”. Cĩ thể áp dụng cho bất cứ BI hoặc tiến trình kinh doanh nào Tích hợp với các thành phần khác của hệ Pentaho BI cho phép bạn dễ dàng áp dụng khai thác dữ liệu cho bất kỳ tiến trình nào trong hệ thống (chẳn hạng như quay vịng tiền mặt) và qui trình kinh doanh thơng minh (như phát sinh báo cáo, hĩa đơn, và nhữg hành động trái quy luật). Việc ứng dụng này rất linh họat tùy theo dữ kiện của tiến trình BI được thực hiện. Trích dẫn, tạo, khai thác để cĩ cái nhìn sâu sắc hơn trong phân tích của bạn Điều này xảy ra khi dữ liệu được sinh ra hoặc một phần trong tiến trình chuẩn bị dữ liệu. Ví dụ khi làm báo cáo bán hàng bạn cĩ thể hiện vùng đồ họa mà bạn dùng cho khai thác dữ liệu sau này. Ngịai ra bạn cũng cĩ thể thêm dữ liệu trong quá trình chuẩn bị khai thác dữ liệu – như các biến tính tốn hay đơn vị đo lường khác. Cách khai thác dữ liệu. Chọn một mơ hình Các nhà phân tích cĩ thể làm việc trên phạm vi mơ hình trực quan bao gồm các hình thức tiên tiến của khai thác dữ liệu như là xếp nhĩm, phân đoạn, các quyết định hình cây, kiểu ngẫu nhiên, kiểu hình mạng, và phân tích nhân tố thiết yếu. Thêm dữ liệu Cĩ thể thêm các tính năng khác cho dữ liệu. Ví dụ, bạn cĩ thể định nghĩa các biến để hệ thống cĩ thể tự động lấy dữ liệu tạo thêm các cột mới để phân tích. Phù hợp 31 Mỗi mơ hình làm việc cĩ những tham số riêng để phù hợp với dữ liệu mẫu. Những người phân tích cĩ thể dùng tham số này một cách tự động hay điều chỉnh bằng tay (phụ thuộc vào mơ hình) Đánh giá Kết quả cĩ thể được đánh giá theo mơ hình dùng dữ liệu đã cĩ để so với kết quả thực tế Tính hồn hảo Áp dụng mơ hình huấn luyện trong qui trình. Sau khi được huấn luyện chắc chắn sẽ đưa ra kết quả tốt nhất cho mục đích kinh doanh cụ thể cần áp dụng. Dữ liệu đầu ra Áp dụng mơ hình huấn luyện trong qui trình. Sau khi được huấn luyện chắc chắn sẽ đưa ra kết quả tốt nhất cho mục đích kinh doanh cụ thể cần áp dụng. Kỹ thuật Cơng cụ khai thác dữ liệu mạnh Cung cấp một cơng cụ học giải thuật tồn diện từ dự án Weka bao gồm xếp nhĩm, chia đoạn, quyết định hình cây, kiểu ngẫu nhiên, kiểu hình mạng, và phân tích nhân tố thiết yếu. Pentaho tích hợp với hệ Pentaho BI xử lý chuyển đổi định dạng dữ liệu tự động thành các định dạng mà cơng cụ khai thác dữ liệu cần[8]. Giải thuật cĩ thể áp dụng trực tiếp vào dữ liệu hoặc gọi từ Java. Đầu ra cĩ thể xem dạng đồ thị tương tác với chương trình hoặc dùng nguồn dữ liệu để tạo báo cáo, phân tích sâu hơn hay các xử lý khác nữa. Bộ lọc hỗ trợ việc phân rời hố, bình thường hĩa, mẫu sử dùng lại, chọn lọc thuộc tính, thay đổi và kết hợp thuộc tính. Cơng cụ phân loại cung cấp các mơ hình để dự đốn những số lựơng ảo và thực. Sơ đồ học bao gồm những cây quyết định và danh sách, những máy véc tơ hỗ trợ, perceptrons nhiều lớp, hồi quy logic, mạng Baye và các kỹ thuật tiên tiến khác[9]. 32 Cơng cụ khai thác dữ liệu là một hệ hịan hảo trong việc phát triển máy học sơ đồ giúp khách hàng kết hợp chặt chẽ các mơ hình của họ. Đầu vào và đầu ra được kiểm sốt chặt chẽ, cho phép người phát triển đưa ra những giải pháp hồn tồn tùy biến sử dụng những thành phần được cung cấp. Cơng cụ thiết kế trực quan Cơng cụ thiết kế khai thác dữ liệu và quản trị trực quan được tích hợp theo chuẩn Pentaho và cĩ hỗ trợ trong Eclipse. Cung cấp giao diện người dùng trực quan trong việc tiền xử lý dữ liệu, phân loại, hồi qui, xếp loại, qui luật hiệp hội và trực quan hĩa. Bảo mật và đạt chuẩn Cung cấp bảo mật vai trị và qui tắc kinh doanh Hỗ trợ Java đăng nhập một lần và LDAP để tích hợp với các bảo mật doanh nhiệp đang tồn tại Hỗ trợ mục đích kiểm thử. Dữ liệu kiểm thử cĩ thể in ngay ra báo cáo và được tích hợp với các đặc tính của tiến trình trong hệ Pentaho BI Các định nghĩa Web Services, Repositories, XML Các thành phần cĩ giao diện đồ họa được sử dụng một cách linh họat Kho dữ liệu tập trung chứa các biểu báo, biểu mẫu, truy vấn và các nội dung khác Các định nghĩa về nội dung được lưu dạng XML cĩ thể tạo, sửa chữa bằng nhiều cách khác hơn là chỉ trên giao diện – ví dụ sửa file XML bằng tay. Tính mềm dẻo và tính thực thi Được thiết kế để triển khai trong các doanh nghiệp, ứng dụng với chức năng phong phú chạy trên nền J2EE bao gồm JBoss™ , ngồi ra cịn cĩ tính năng mềm dẻo như là phân nhĩm. 33 Chương 4. Giới thiệu bài tốn triển khai trên Pentaho và kết quả đạt được 4.1. Giới thiệu bài tốn Để minh họa cho việc sử dụng cơng cụ pentaho trong việc xây dựng báo cáo tài chính em xin trình bày ví dụ cụ thể sau: ”Xem xét, đánh giá sự ảnh hưởng của giá dầu, tỷ giá USD/VND,chỉ số VNIndex lên giá vàng”. Mơi trường thực hiện: - Hệ điều hành windows 7 - Hệ quản trị cơ sở dữ liệu Mysql - Bộ cơng cụ pentaho 4.2. Thu thập,xử lý dữ liệu Dữ liệu về tỉ giá USD/VND được lấy tại: File tải về là file excel cĩ dạng: Hình 10. Dữ liệu tỷ giá 34 Dữ liệu về giá vàng được lấy tại địa chỉ: File tải về cĩ dạng: Hình 11. Dữ liệu giá vàng Đơn giá được tính theo đơn vị USD/ounce Dữ liệu giá dầu được lấy tại địa chỉ: File tải về cĩ dạng: 35 Hình 12. Dữ liệu giá dầu Đơn vị tính là USD / Thùng Dữ liệu chỉ số VnIndex được tải tại địa chỉ File tải về cĩ dạng: Hình 13. Dữ liệu chỉ số VnIndex 36 Theo dữ liệu thu thập được thì ta thấy dữ liệu khơng đồng nhất. Ví dụ như trong dữ liệu tỉ giá thì thơng tin về tỉ giá cĩ đầy đủ các ngày, nhưng trong dữ liệu về giá vàng thì khơng cĩ dữ liệu về giá vàng trong ngày thứ 7 và chủ nhật hàng tuần, và dữ liệu về giá dầu chỉ cĩ theo tháng.Vậy giải pháp trong bài này em chọn để đồng bộ dữ liệu đĩ là dữ liệu thiếu sẽ được thêm vào bằng cách lấy dữ liệu của ngày trước đĩ, dữ liệu hàng ngày của giá dầu sẽ bằng dữ liệu giá dầu của tháng đĩ.Như vậy, dữ liệu đã được đồng bộ. Bước tiếp theo ta tổng hợp dữ liệu thành 1 file excel với đầy đủ thơng tin như hình sau: Hình 14. Dữ liệu tổng hợp Trường timekey được thêm theo cách năm+tháng+ngày viết liền. Như vậy ta đã làm sạch được dữ liệu, loại bỏ dữ liệu dư thừa. 4.3. Tạo data warehouse Áp dụng cơng cụ data intergation trong bộ cơng cụ của pentaho đĩ là Spoon, ta tạo kho dữ liệu như sau: Kho dữ liệu cĩ 3 bảng: 2 bảng chiều và 1 bảng chính, 2 bảng chiều đĩ là : bảng dim_time : đưa ra các dữ liệu về ngày, tháng, quý, năm. Bảng dim_factor: đưa ra các nhân tố dùng để xử lý. Một bảng chính đĩ là bảng fact_price chứa thơng tin giá của từng nhân tố tại từng thời điểm. Cấu trúc bảng và sơ đồ quan hệ được mơ tả trong hình sau: 37 Hình 15. Mơ hình kho dữ liệu Mở cơng cụ Spoon, ta chọn File -> New -> Transformation. Dữ liệu đầu vào là file excel lưu dưới dạng .csv chứa tồn bộ dữ liệu đã được chuẩn hĩa do đĩ trong ơ Step ta chọn phần input là CSV file input kéo và thả biểu tượng này vào trong vùng thao tác ta được: Hình 16. Spoon workspace Click đúp vào đối tượng này ta thay đổi các thuộc tính của nĩ như step name, file name (đường dẫn đến file dữ liệu .csv), delimiter (ký tự ngăn cách giữa các trường trong file .csv), sau đĩ ta ấn Get Fields và sửa đổi tên các trường cho phù hợp: 38 Hình 17. Spoon nhập dữ liệu Để làm bước tiếp theo, ta phải tạo một cơ sở dữ liệu trống trong Mysql. Ta dùng Mysql Query Browser để tạo cơ sở dữ liệu mới thơng qua truy vấn “CREATE DATABASE data_price”. Với data_price là tên data warehouse cần tạo. Trở lại Spoon trong phần step ta chọn trong tab Data Warehouse kéo thả Combination lookup / update vào khung làm việc. Sau đĩ kéo di chuột trái+ shift từ bước input CSV sang bước Combination lookup/update. Hình 18. Combination Lookup/Update Click đúp vào bước Combination lookup/update để thay đổi các thuộc tính 39 Hình 19. Thay đổi thuộc tính Phần connection ta chọn new nếu chưa cĩ kết nối nào: Hình 20. Kết nối cơ sở dữ liệu Ta chọn Mysql trong phần Connection Type, điền thơng tin cơ sở dữ liệu, connection name, chọn test, nếu kết nối thành cơng ta chọn OK. Quay trở lại cửa sổ Combination lookup/update ta điền các thơng số , ở đây trong bước này ta sẽ tạo bảng dim_time 40 Hình 21. Tạo bảng Dim_time Ấn nút Get Fields để load các trường trong file excel , ta loại bỏ nhưng trường khơng xuất hiện trong bảng dim_time, đặt trường khĩa cho bảng dim_time, tick vào ơ Remove lookup fields? Để các trường này khơng xuất hiện trong các bảng sau. Ấn nút SQL để xem các câu lệnh sql tạo bảng sau đĩ ấn nút Execute để tạo bảng Dim_time(time_id,timekey,month,quarter,year). Tương tự ta cũng kéo thêm 1 step Combination lookup/update nữa và nối tiếp với bước tạo bảng dim_time trên: Hình 22. Tạo bảng dim_factor 41 Trong bảng này chỉ cĩ 2 trường là factor_key tự động sinh ra và là khĩa chính và trường factor chứa tên của các nhân tố ảnh hưởng. Bước tiếp theo ta tạo bảng fact_price, đây là bảng output vì nĩ bao hàm 2 bảng trên. Do đĩ trong phần step ta kéo thả Table output. Hình 23. Tạo Table Output Click đúp vào Table output ta thay đổi các thơng số cho phù hợp: Hình 24. Tạo bảng fact_price Ấn SQL để xem câu lệnh sql và ấn nút Execute để tạo bảng. Ta lưu transformation này vào và ấn nút và chọn Launch để nhập dữ liệu vào trong cơ sở dữ liệu đã được tạo. 42 Hình 25. Nhập dữ liệu Như vậy ta đã tạo thành cơng data warehouse all_price bằng cơng cụ Spoon. 4.4. Xử lý dữ liệu bằng kỹ thuật OLAP 4.4.1. Tạo cube Để tạo cube ta dùng cơng cụ Schema Workbench trong bộ cơng cụ Pentaho. Trước tiên ta phải tạo kết nối tới cơ sở dữ liệu Mysql bằng cách trong menu Tools ta chọn Connection hiện ra cửa sổ, ta điền các thơng số để kết nối tới Mysql: Hình 26. Kết nối cơ sở dữ liệu Ta tạo 1 schema mới và 1 cube với với các độ đo sum và avg đối với giá như trong hình: 43 Hình 27. Kiến trúc Cube Sau khi đã tạo được cube, ta publish cube này lên hệ thống pentaho với thơng tin đầy đủ về server và tài khoản user trong pentaho. Hình 28. Repository Login Ta lưu lại file cube và publish schema và cube lên hệ thống pentaho. 4.4.2. Analysis View Pentaho cung cấp tiện ích áp dụng kỹ thuật OLAP đĩ là Analysis View. Ngồi ra chúng ta cĩ thể áp dụng cơng cụ được pentaho phát triển riêng để sử dụng OLAP đĩ là Mondrian. Trong bài này em xin trình bày cách áp dụng tiện ích Analysis View để ứng dụng kỹ thuật OLAP. 44 Trước tiên ta phải kết nối Pentaho đến cơ sở dữ liệu mà chúng ta cần phân tích trên hệ cơ sở dữ liệu Mysql. Để kết nối đến cơ sở dữ liệu này ta vào folder cài đặt Pentaho , vào folder administration-console và chạy file start-pac.bat để khởi động Administration Console. Sau đĩ ta vào trình duyệt và chạy link : sẽ hiện ra khung đăng nhập, tài khoản admin mặc định là user: “admin” / password: “password”. Để tạo kết nối tới mysql và data warehouse đã được tạo ta vào tab Database Connection. Trong bài này em sử dụng cơ sở dữ liệu all_price và hệ cơ sở dữ liệu Mysql nên ta sẽ nhập như hình sau: Hình 29. Kết nối cơ sở dữ liệu Sau khi đã nhập đầy đủ , ta ấn test để kiểm tra kết nơi, kết nối thành cơng ta chọn OK để lưu kết nối này. Như vậy ta đã kết nối thành cơng pentaho tới mysql. Bước tiếp theo ta vào địa chỉ để vào Pentaho User Console. Hiện ra khung đăng nhập, ta điền user và password vào, hoặc cĩ thể sử dụng 1 vài account mẫu. Sau khi login vào sẽ hiện ra màn hình như sau: 45 Hình 30. Khung làm việc Pentaho Sử dụng Analysic View chọn schema và cube đã được tạo ra ở bước trên. Hình 31. Chọn schema và cube Sau khi ấn OK sẽ hiện ra cửa sổ như sau: Hình 32. Dữ liệu schema và cube Trên thanh Tools bar ta chọn để lựa chọn độ đo, columns, rows và filter cho việc lựa chọn hiển thị nội dung các phân tích. 46 Hình 33. Nội dung phân tích Để phân tích tỉ giá USD/VNĐ trong vịng 10 năm từ năm 2000 tới 2010, trong phần Measures ta chọn avg price: Hình 34. Chọn Measures Phần factor ta chọn exchange: Hình 35. Chọn factor Trong phần thời gian ta chọn các năm từ 2000 đến 2010, ở đây ta so sánh giá trị trung bình của tỉ giá của từng năm. 47 Hình 36. Chọn năm phân tích Tuy nhiên ta cĩ thể lựa chọn thời gian chi tiết hơn theo thừng tháng, từng quý, và từng ngày bằng cách chọn nút : Hình 37. Chọn chi tiết ngày tháng Và để hiển thị biểu đồ tỉ giá trong vịng 10 năm qua, ta chọn để lựa chọn kiểu biểu đồ: 48 Hình 38. Chọn loại biểu đồ Sau khi đã chọn xong định dạng cho biểu đồ, ta chọn nút : để hiển thị biểu đồ tỉ giá usd / vnd trong vịng 10 năm qua: Hình 39. Biểu đồ tỷ giá USD/VND Dựa vào biểu đồ ta cĩ thể tháy tỷ giá USD/VNĐ thay đổi nhiều nhất trong những năm 2008 trở lại đây và đang cĩ xu hướng tăng. Tương tự ta cĩ biểu đồ giá vàng: 49 Hình 40. Biểu đồ giá vàng Giá vàng trong 10 năm gần đây tăng mạnh, đặc biệt là tử năm 2005 tới nay, giá vàng biến đổi và tăng liên tục. Dựa vào biểu đồ ta cĩ thể thấy giá vàng đang cĩ xu thế tăng. Biểu đồ giá dầu: Hình 41. Biểu đồ giá dầu Giá dầu cĩ nhiều biến động trong 10 năm trở lại đây. Giá dầu tăng giảm thất thường, rất khĩ để dự đốn. Giá dầu cao nhất vào khoảng giữa năm 2007. Và hiện nay đang cĩ xu hướng tăng trở lại. Biểu đồ chỉ số VnIndex: 50 Hình 42. Biểu đồ chỉ số VnIndex Chỉ số VnIndex của nước ta cĩ biến động rất lớn. Từ năm 2000 tới năm 2005 chỉ số VnIndex tăng rất châm, nhưng sau năm 2005 tới năm 2007 chỉ số VNIndex liên tục tăng cao. Và rồi xuống thấp nhất vào cuối năm 2008 đầu 2009, hiện nay đang cĩ dấu hiệu phục hồi và cân bằng. Biểu đồ giá vàng và giá dầu: Hình 43. Biểu đồ giá vàng và giá dầu Biểu đồ giá vàng và tỉ giá USD /VNĐ 51 Hình 44. Biểu đồ tỷ giá và giá vàng Dựa vào biểu đồ ta cĩ thể nhin thấy sự liên quan giữa giá vàng và tỉ giá USD/VND, hầu như chúng đều cùng tăng và cùng giảm. Biểu đồ chỉ số VNIndex và giá vàng: Hình 45. Biểu đồ giá vàng và VNIndex Dựa vào biểu đồ ta nhận thấy rằng giá vàng và chỉ số VNIndex ít cĩ mối liên hệ với nhau. Do đĩ khĩ cĩ thể kết luận xu hướng của giá vàng dựa vào xu hướng của chỉ số VNIndex. 52 Kết luận Qua những phân tích và ứng dụng trong bài báo cáo này đưa ra cho thấy việc áp dụng kho dữ liệu và các kỹ thuật OLAP trong tương lai sẽ là tất yếu và là xu thế để các doanh nghiệp ứng dụng. Khĩa luận đã đạt được những kết quả: - Tìm hiểu và phân tích kỹ thuật kho dữ liệu và ứng dụng trong lĩnh vực tài chính. - Tìm hiểu và phân tích kỹ thuật OLAP, các mơ hình lưu trữ hỗ trợ OLAP, chỉ ra các ưu và nhược điểm của các mơ hình lưu trữ đĩ. - Phân biệt được sự khác nhau giữa OLTP và OLAP - Giới thiệu bộ cơng cụ Business Intelligent là Pentaho và áp dụng. - Phân tích dữ liệu biến động của giá đơ la, giá vàng và chỉ số VNIndex. 53 Tài liệu tham khảo Tiếng Việt [1] Kho dữ liệu . [2] Ths. Nguyễn Thế Quyền. Giới thiệu về kiến trúc khối của OLAP. Tạp chí Cơng nghệ thơng tin & Truyền thơng. Tiếng Anh [3]. Djoni Darmawikarta. Dimensional Data Warehousing with MySql. Brainy Software Corp, 2007. [4]. Don Jones. Why is OLAP Faster than OLTP. han_OLTP.php [5]. Hari Mailvaganam. Introduction to OLAP. [6]. Kefa Rabah. Pentaho Business Intelligene BI Suite Training Manual. Global Open Versity, 2007. Tr. 1-23. [7]. Online Analytical Processing. Wikipedia.org. [8]. Pentaho Corporation. Pentaho Training Course 2010 Edition. Pentaho Corporation, 2007. Tr 1-13. [9]. Pentaho Corporation. Pentaho Analysis Viewer User Guide. Pentaho Corporation, 2007. Tr 1-23. [10]. Roland Bouman- Jos Van Dongen. Business Intelligence and Data Warehousing with Pentaho and Mysql- Pentaho Solutions. Wiley Publishing,Inc, 2009. Tr 3-309. [11]. S.Nagabhushana. Data warehousing Olap and Data mining. New Age International Publishers, 2006. Tr. 24-246. 54 [12]. Seth Grimes. Mysql V5- Ready for Prime Time Business Intelligence. Alta Plana Corporation, 2006. Tr 2-23. [13]. Surajit Chaudhuri- Umeshwar Dayal. An Overview of Data warehouse and OLAP Technology. Tr 2-10. [14] Thomas C.Hammergren- Alan R. Simon. Data warehousing for dummies. Wiley Publishing,Inc. Tr 9-95. [15] MOLAP, ROLAP, And HOLAP

Các file đính kèm theo tài liệu này:

  • pdfLUẬN VĂN- ÁP DỤNG KỸ THUẬT OLAP VÀ KHO DỮ LIỆU TRONG DỰ BÁO TÀI CHÍNH.pdf
Tài liệu liên quan