MỤC LỤC 1. Giới thiệu 2. Tại Sao Phải Khai Phá Dữ Liệu 3. Khái Niệm Kho Dữ Liệu 4. Cấu Trúc Kho Dữ Liệu 5. Mối Liên Quan Giữa Kho Dữ Liệu Và Khai Phá Dữ Liệu 6. OLAP là gì 7. Mô Hình Dữ Liệu Đa Chiều 8. Công cụ hỗ trợ OLAP 1. Giới thiệu. Công nghệ thông tin phát triển nhanh chóng và được ứng dụng rộng rãi trong mọi lĩnh vực như kinh tế,kế toán, giáo dục, giải trí, quản lý… đó là cả một lượng thông tin khổng lồ. vậy nhưng trong những thông tin đó thì thông tin gì là có ích cho mỗi người sử dụng? và làm sao chúng ta có thể có được những gì chúng ta cần một cách nhanh chóng trong dữ liệu là bạt ngàn như vậy. câu hỏi đặt ra là chúng ta đang “giàu về thông tin nhưng nghèo về tri thức”. Điều đó đó đòi hỏi phải phát triển các phương pháp nào đó nhằm phát hiện ra những thông tin, tri thức có ích phù hợp với người muốn sử dụng nó từ đó thúc đẩy khả năng sản xuất, kinh doanh, cạnh tranh của các tổ chức, doanh nghiệp. khai phá dữ liệu là một phương pháp như vậy. Các kết quả nghiên cứu cùng với những ứng dụng thành công trong khai phá dữ liệu, khám phá tri thức cho thấy khai phá dữ liệu là một lĩnh vực khoa học tiềm năng, mang lại nhiều lợi ích, đồng thời có ưu thế hơn hẳn so với các công cụ phân tích dữ liệu truyền thống. 2. Tại Sao Phải Khai Phá Dữ Liệu Ước tính cứ khoảng 20 tháng lượng thông tin trên thế giới lại tăng gấp đôi. Chính vì vậy, hiện nay lượng dữ liệu mà con người thu thập và lưu trữ được trong các kho dữ liệu là rất lớn, nhiều khi vượt quá khả năng quản lý. Thời gian này, người ta bắt đầu đề cập đến khái niệm khủng hoảng phân tích dữ liệu tác nghiệp để cung cấp thông tin với yêu cầu chất lượng ngày càng cao cho những người ra quyết định trong các tổ chức tài chính, thương mại, khoa học, ... . Đúng như John Naisbett đã cảnh báo “Chúng ta đang chìm ngập trong dữ liệu mà vẫn đói tri thức”. Với một khối lượng dữ liệu tăng nhanh và khổng lồ như vậy, rõ ràng các phương pháp thủ công truyền thống áp dụng để phân tích dữ liệu sẽ không hiệu quả, tốn kém và dễ dẫn đến những sai lệch. Do đó để có thể khai phá hiệu quả các cơ sở dữ liệu lớn cần phải có những kỹ thuật mới, các kỹ thuật khai phá dữ liệu (Data Mining). 3. Khái Niệm Kho Dữ Liệu Data warehouse (kho dữ liệu) là kho lưu trữ dữ liệu bằng thiết bị điện tử trong 1 tổ chức. các kho dữ liệu được thiết kế để hỗ trợ phân tích và lập báo cáo. Data mart là kho dữ liệu cục bộ là nơi dữ liệu được khoanh vùng theo chủ đề tới 1 giới hạn nào đó và có thể được thay đổi để phù hợp với yêu cầu từng bộ phận người dùng . các công cụ truy vấn (query), báo cáo (reporting), phân tích trực tuyến (OLAP), khai phá dữ liệu (data mining) là những cách khai thác Data warehouse nhằm đem lại tri thức (knowledge) hơn là dữ liệu thô (raw data). Một định nghĩa mở rộng cho kho dữ liệu bao gồm cả các công cụ thông minh, các công cụ để trích, biến đổi và nạp dữ liệu vào kho, và các công cụ để quản lý và lấy siêu dữ liệu (meta data). Theo W.H.Inmon, Data warehouse được định nghĩa như một “tập hợp dữ liệu hướng đối tượng, tích hợp, có tính ổn định, thay đổi theo thời gian hỗ trợ cho xử lý thực hiện quyết định quản trị”. 4. Cấu Trúc Kho Dữ Liệu Một kho dữ liệu có thể được coi là một hệ thống thông tin với những đặc tính: Là một cơ sở dữ liệu được thiết kế có nhiệm vụ phân tích, sử dụng các dữ liệu từ các ứng dụng khác nhau. Hỗ trợ cho một số người dùng có liên quan với các thông tin liên quan. Là dữ liệu chỉ đọc. Nội dung của nó được cập nhật thường xuyên theo cách thêm thông tin. Chứa các dữ liệu lịch sử và hiện tại để cung cấp các xu hướng thông tin. Chứa các bảng dữ liệu có kích thước lớn. Một câu hỏi thường trả về một tập kết quả liên quan đến toàn bộ bảng và các liên kết nhiều bảng.
Trang 1Đề Tài Tiểu Luận :
DataWarehouse and OLAP
Technology
Giáo Viên Hướng Dẫn : PGS.TS Trần Đình Quế
Sinh Viên : Lê Thị Phương Thảo
Lớp : D07Cnpm1
Trang 2MỤC LỤC
1 Giới thiệu
2 Tại Sao Phải Khai Phá Dữ Liệu
3 Khái Niệm Kho Dữ Liệu
4 Cấu Trúc Kho Dữ Liệu
5 Mối Liên Quan Giữa Kho Dữ Liệu Và Khai Phá Dữ Liệu
6 OLAP là gì
7 Mô Hình Dữ Liệu Đa Chiều
8 Công cụ hỗ trợ OLAP
Trang 31 Giới thiệu.
Công nghệ thông tin phát triển nhanh chóng và được ứng dụng rộng rãi trong mọi lĩnh vực như kinh tế,kế toán, giáo dục, giải trí, quản lý… đó là cả một lượng thông tin khổng lồ vậy nhưng trong những thông tin đó thì thông tin gì là có ích cho mỗi người sử dụng? và làm sao chúng ta có thể có được những gì chúng ta cần một cách nhanh chóng trong dữ liệu là bạt ngàn như vậy câu hỏi đặt ra là chúng ta đang “giàu về thông tin nhưng nghèo về tri thức” Điều đó đó đòi hỏi phải phát triển các phương pháp nào đó nhằm phát hiện ra những thông tin, tri thức có ích phù hợp với người muốn sử dụng nó từ đó thúc đẩy khả năng sản xuất, kinh doanh, cạnh tranh của các tổ chức, doanh nghiệp khai phá dữ liệu là một phương pháp như vậy Các kết quả nghiên cứu cùng với những ứng dụng thành công trong khai phá dữ liệu, khám phá tri thức cho thấy khai phá dữ liệu là một lĩnh vực khoa học tiềm năng, mang lại nhiều lợi ích, đồng thời có ưu thế hơn hẳn so với các công
cụ phân tích dữ liệu truyền thống
2 Tại Sao Phải Khai Phá Dữ Liệu
Ước tính cứ khoảng 20 tháng lượng thông tin trên thế giới lại tăng gấp đôi Chính
vì vậy, hiện nay lượng dữ liệu mà con người thu thập và lưu trữ được trong các kho dữ liệu là rất lớn, nhiều khi vượt quá khả năng quản lý Thời gian này, người ta bắt đầu đề cập đến khái niệm khủng hoảng phân tích dữ liệu tác nghiệp
để cung cấp thông tin với yêu cầu chất lượng ngày càng cao cho những người ra quyết định trong các tổ chức tài chính, thương mại, khoa học, Đúng như John Naisbett đã cảnh báo “Chúng ta đang chìm ngập trong dữ liệu mà vẫn đói tri thức” Với một khối lượng dữ liệu tăng nhanh và khổng lồ như vậy, rõ ràng các phương pháp thủ công truyền thống áp dụng để phân tích dữ liệu sẽ không hiệu quả, tốn kém và dễ dẫn đến những sai lệch Do đó để có thể khai phá hiệu quả các cơ sở
dữ liệu lớn cần phải có những kỹ thuật mới, các kỹ thuật khai phá dữ liệu (Data Mining)
3 Khái Niệm Kho Dữ Liệu
Trang 4Data warehouse (kho dữ liệu) là kho lưu trữ dữ liệu bằng thiết bị điện tử trong 1 tổ chức các kho dữ liệu được thiết kế để hỗ trợ phân tích và lập báo cáo Data mart là kho dữ liệu cục bộ là nơi dữ liệu được khoanh vùng theo chủ đề tới 1 giới hạn nào
đó và có thể được thay đổi để phù hợp với yêu cầu từng bộ phận người dùng các công cụ truy vấn (query), báo cáo (reporting), phân tích trực tuyến (OLAP), khai phá dữ liệu (data mining) là những cách khai thác Data warehouse nhằm đem lại tri thức (knowledge) hơn là dữ liệu thô (raw data)
Một định nghĩa mở rộng cho kho dữ liệu bao gồm cả các công cụ thông minh, các công cụ để trích, biến đổi và nạp dữ liệu vào kho, và các công cụ để quản lý và lấy siêu dữ liệu (meta data)
Theo W.H.Inmon, Data warehouse được định nghĩa như một “tập hợp dữ liệu hướng đối tượng, tích hợp, có tính ổn định, thay đổi theo thời gian hỗ trợ cho xử lý thực hiện quyết định quản trị”
4 Cấu Trúc Kho Dữ Liệu
Một kho dữ liệu có thể được coi là một hệ thống thông tin với những đặc tính: Là một cơ sở dữ liệu được thiết kế có nhiệm vụ phân tích, sử dụng các dữ liệu từ các ứng dụng khác nhau Hỗ trợ cho một số người dùng có liên quan với các thông tin liên quan Là dữ liệu chỉ đọc Nội dung của nó được cập nhật thường xuyên theo cách thêm thông tin Chứa các dữ liệu lịch sử và hiện tại để cung cấp các xu hướng thông tin Chứa các bảng dữ liệu có kích thước lớn Một câu hỏi thường trả về một tập kết quả liên quan đến toàn bộ bảng và các liên kết nhiều bảng
Trang 5Mô hình data warehouse ba lớp Cấu trúc của một hệ thống 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
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ệu gọ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
Trang 61 Dữ liệu nguồn (là các ứng dụng tác nghiệp hoặc các cơ sở dữ liệu tác nghiệp) và các công cụ chiết xuất, làm sạch và chuyển đổi dữ liệu
2 Kho dữ liệu về dữ liệu (Metadata)
3 Các kỹ thuật xây kho
4 Kho dữ liệu theo chủ đề (Data mart), là nơi các dữ liệu được khoanh vùng theo chủ đề tới một giới hạn nào đó và có thể được thay đổi cho phù hợp với nhu cầu của từng bộ phận người dùng Một kho dữ liệu có thể được phân tích thành nhiều kho dữ liệu chủ đề và ngược lại một tập hợp các kho dữ liệu theo chủ đề
có thể tạo thành một kho dữ liệu
5 Các công cụ truy vấn (query), báo cáo (reporting), phân tích trực tuyến (OLAP)
và khai phá dữ liệu (data mining) Đây chính là các cách khai thác kho dữ liệu
để đem lại những “tri thức” hơn là đem lại chính những dữ liệu thô
6 Quản trị kho dữ liệu
7 Hệ thống phân phối thông tin
Trang 75 Mối quan hệ giữa kho dữ liệu và khai phá dữ liệu
Cả hai đều có thể đứng độc lập với nhau, tuy nhiên khi kết hợp được kho dữ liệu với khai phá dữ liệu thì lợi ích rất lớn lý do như :
Dữ liệu của kho dữ liệu rất phù hợp cho việc khai phá dữ liệu do đã được tập hợp và làm sạch
Cơ sở hạ tầng của kho dữ liệu hỗ trợ rất tốt cho các việc như xuất, nhập cũng như các thao tác cơ bản trên dữ liệu
6 OLAP là gì
OLAP về cung cấp các tập lệnh rất hữu hiệu trong phân tích 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 Ngôn ngữ xử lý phân tích trực tuyến (OLAP - On-Line Analytical Prosessing), rất phù hợp với kho dữ liệu, ngôn ngữ này tương tự với ngôn ngữ truy vấn SQL Ngôn ngữ SQL và các công cụ làm báo cáo truyền thống chỉ có thể miêu tả những gì có trong cơ sở dữ liệu thì phân tích trực tuyến có khả năng phân tích dữ liệu, xác định xem giả thuyết đúng hay sai Tuy nhiên, phân tích trực tuyến lại không có khả năng đưa ra được các giả thuyết
Và kích thước quá lớn và tính chất phức tạp của kho dữ liệu làm cho nó rất khó có thể được sử dụng cho những mục đích như đưa ra các giả thuyết từ các thông tin mà chương trình ứng dụng cung cấp (Ví dụ như khó có thể đưa ra được giả thuyết giải thích được hành vi của một nhóm khách hàng) Kỹ thuật học máy (machine learning) thường được sử dụng để tìm ra những giả thuyết từ các thông tin dữ liệu thu thập được
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 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 toá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
Trang 8Cung 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 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ẽ không thể cho kết quả hoặc
sẽ mất rất nhiều thời gian
Ngôn ngữ xử lý phân tích trực tuyến (OLAP - On-Line Analytical Prosessing), rất phù hợp với kho dữ liệu, ngôn ngữ này tương tự với ngôn ngữ truy vấn SQL và tập trung vào các câu lệnh sau :
Thu nhỏ (roll-up) (tăng mức độ trừu tượng): ví dụ: nhóm dữ liệu theo năm thay vì theo quý
Mở rộng (drill-down) (giảm mức độ trừu tượng hoặc tăng mức chi tiết) ví dụ: mở rộng dữ liệu, nhìn theo tháng thay vì theo quý
Cắt lát (slice) : nhìn theo từng lớp một Ví dụ: từ danh mục bán hàng của Q1, Q2, Q3, Q4 chỉ xem của Q1
Thu nhỏ (dice) : bỏ bớt một phần của dữ liệu ( tương ứng thêm điều kiện vào câu lệnh WHERE trong SQL)
pivot : định hướng lại khung nhìn đa chiều của dữ liệu
7 Mô hình dữ liệu đa chiều
Ví dụ sau coi việc kinh doanh bán hang như một khối (cube), khối có ba chiều (three dimension) là địa chỉ (address) bao gồm các thành phố Chicago, New York, Toronto, Vancouver), chiều thứ hai là thời gian (time) gồm bốn phần Q1, Q2, Q3, Q4 Và chiều thứ ba là mục (item) gồm các giá trị như giải trí tại gia, máy tính, điện thoại, bảo mật Toàn bộ các giá trị được lưu trữ trên mỗi ô của khối (cube) tính theo
số lượng bán (trên một nghìn) Ví dụ toàn bộ mặt hàng bán được trong quý thứ nhất (Q1) là mặt hang lien quan đến hệ thống bảo mật ở Vancouver là 400,00 $ được lưu trữ trong ô <Vancouver, Q1, bảo mật>
Trang 9mô phỏng các chiều trong kinh doanh bán hàng
Một khối dữ liệu không nhất thiết phải có cấu trúc 3 chiều (3-D), 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), đó 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,… những thuộc tính này có thể được chỉ ra bởi nhà quản trị hoặc các nhà phân tích dữ liệu
8 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
8.1 Mô hình Multidimensional 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 toá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 ngoài cơ sở dữ liệu data mart hoặc kho dữ liệu
Trang 10Mô hình dữ liệu MOLAP
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ý
Mô hình MOLAP cho phép thực hiện các truy vấn phân tích dữ liệu tốt nhất vì các đặc điểm sau:
Thông tin tổng hợp và dữ liệu cơ sở được lưu trữ trong cấu trúc đa chiều
Các thao tác kết (join), là một trong những thao tác tốn chi phí nhất của mô hình quan hệ, thì không cần thiết
MOLAP sử dụng các thuật toán nén dữ liệu cho phép lưu trữ với ít không gian hơn MOLAP sử dụng chỉ mục bitmap cho hiệu quả thực thi tốt hơn
MOLAP lấy dữ liệu trong khối (cube) rất nhanh bằng cách sử dụng các xử lý truy vấn tốc độ cao và cache dữ liệu (data cache) Thông tin nhận được từ khối (cube) và các bảng OLAP cơ sở chỉ được truy xuất thông tin chi tiết
MOLAP không xử dụng cơ chế khoá vì dữ liệu là chỉ đọc
MOLAP có thể được nạp trước vào bộ nhớ cache
Dữ liệu có thể dễ dàng sao chép đến client cho phân tích không trực tuyến (off-line)
8.2 Mô hình Relational OLAP (ROLAP):
Trang 11bảng của data mart hoặc kho dữ liệu.
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 Lưu trữ dữ liệu trong cấu trúc ROLAP cung cấp các lợi ích sau:
ROLAP cho phép Cube Builder tự động tạo chỉ mục
ROLAP ánh xạ các tổng hợp có sẵn từ data mart hoặc kho dữ liệu OLAP Manager được phép xử dụng các tổng hợp có sẵn để tổng hợp mà không cần tính toán lại cho mỗi truy vấn
ROLAP tạo đòn bẩy cho hệ quản trị cơ sở dữ liệu quan hệ nhằm cho các nhà quản trị hệ thống duy trì nó hiệu quả hơn
ROLAP hỗ trợ Microsoft SQL Server, Oracle, Access và Open Database Connectivity (ODBC)
8.3 Mô hình Hybird OLAP (HOLAP):
Mô hình OLAP lai (HOLAP) là sự kết hợp giữa MOLAP và ROLAP
Trang 12Mô 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
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
8.4 So sách các mô hình:
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
Trang 13[1] Jiawei Han University of Illinois at Urbana- Champaign Micheline Kamber - Data Mining Concepts and Techniques Second Edition
[2] Nguyễn Bình, Lý thuyết Thông tin Học viện Công nghệ Bưu chính Viễn thông, Hà nội, 2006
[3] Trần Đình Quế , Chuyên đề AGENT – DATA MINING & WEB MINING [4] http://vi.wikipedia.org/wiki/Kho_d%E1%BB%AF_li%E1%BB%87u