Bài Tập Chuyên Đề SV : Nguyễn Thành Long Lớp : D07CNPM1 Version 1.0 : OLAP On Line Analytical Processing I.Nội Dung Chính 1.OLAP là gì? 2.Mô hình dữ liệu đa chiều 3.Giới thiệu dịch vụ OLAP (OLAP Services ) của Microsoft SQL Server 4.So sánh OLAP với OLTP (On Line Transaction Processing ) 5.Các mô hình lưu trữ hỗ trợ OLAP 6.Kiến trúc khối của OLAP (OLAP Cube) 7.Kiến trúc dịch vụ OLAP Yêu cầu : viết 5 trang nói về OLAP 10 trang nói về chủ đề này 1.OLAP là gì? OLAP là On Line Analytical Processing .Tức là chuyên phân tích Data theo hướng Online,mọi người cùng tham gia thao tác phân tích trên đây. Và DataWareHouse chính là DataBase đầu vào chính cho quá trình On Line Analytical Processing .Vì do nhu cầu phân tích dữ liệu trong quá khứ hoặc các dữ liệu hiện tại nhằm hổ trợ cho việc ra quyết định thật chính xác,đúng lúc,giảm rủi ro.Và đấy cũng là nhu cầu lớn nhất ở mỗi doanh nghiêp nhằm phục vụ các quyết định chiến lược cho công ty.Nhất là các công ty sản xuất lớn với khối lượng dữ liệu lớn. Và đi sâu vào nữa,MS SQL Server 2005 hổ trợ mạnh phần On Line Analytical Processing này. Thế câu hỏi đặt ra là chúng sẽ phân tích DataWareHouse như thế nào để phục vụ cho nhu cầu mục đích trên.có thể nói ngắn gọn như thế này : Chắc bạn có nghe đến Kĩ thuật dự báo trong sản xuất và dịch vụ (chuyên ngành Kĩ Thuật Hệ Thống ( ISE) ,đầy là 1 trong các thuật toán tiêu biểu mà OLAP của SQL Server 2005 hổ trợ nhằm dự báo có thể là nhu cầu khách hàng cho các thời đoạn tiếp theo,hoặc dự báo doanh thu cho tháng tới là bao nhiêu với sai số là nhỏ nhất;Tiếp theo là Decission Tree (Cây ra quyết định),đây là công cụ hổ trợ việc ra quyết định 1 cách trực quan kết hợp 1 vài kiến thức về Statistic nhằm đưa ra các quyết định đầu tư 1 cách hiệu quả và kém rủi ro nhất. Đây là 1 lĩnh vực khoa học,thường gọi là Management Science(Khoa học quản lý). Điểm đặc thù của chuyên ngành ISE ( Kĩ Thuật Hệ Thống Công Nghiệp ) 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
Bài Tập Chuyên Đề SV : Nguyễn Thành Long Lớp : D07CNPM1 Version 1.0 : OLAP -On Line Analytical Processing I.Nội Dung Chính 1.OLAP là gì? 2.Mô hình dữ liệu đa chiều 3.Giới thiệu dịch vụ OLAP (OLAP Services ) của Microsoft SQL Server 4.So sánh OLAP với OLTP (On Line Transaction Processing ) 5.Các mô hình lưu trữ hỗ trợ OLAP 6.Kiến trúc khối của OLAP (OLAP Cube) 7.Kiến trúc dịch vụ OLAP /* Yêu cầu : viết 5 trang nói về OLAP 10 trang nói về chủ đề này */ 1.OLAP là gì? -OLAP là "On Line Analytical Processing" .Tức là chuyên phân tích Data theo hướng Online,mọi người cùng tham gia thao tác phân tích trên đây. Và DataWareHouse chính là DataBase đầu vào chính cho quá trình "On Line Analytical Processing" .Vì do nhu cầu phân tích dữ liệu trong quá khứ hoặc các dữ liệu hiện tại nhằm hổ trợ cho việc ra quyết định thật chính xác,đúng lúc,giảm rủi ro.Và đấy cũng là nhu cầu lớn nhất ở mỗi doanh nghiêp nhằm phục vụ các quyết định chiến lược cho công ty.Nhất là các công ty sản xuất lớn với khối lượng dữ liệu lớn. Và đi sâu vào nữa,MS SQL Server 2005 hổ trợ mạnh phần "On Line Analytical Processing" này. Thế câu hỏi đặt ra là chúng sẽ phân tích DataWareHouse như thế nào để phục vụ cho nhu cầu mục đích trên.có thể nói ngắn gọn như thế này : Chắc bạn có nghe đến "Kĩ thuật dự báo trong sản xuất và dịch vụ (chuyên ngành Kĩ Thuật Hệ Thống ( ISE) ",đầy là 1 trong các thuật toán tiêu biểu mà OLAP của SQL Server 2005 hổ trợ nhằm dự báo có thể là nhu cầu khách hàng cho các thời đoạn tiếp theo,hoặc dự báo doanh thu cho tháng tới là bao nhiêu với sai số là nhỏ nhất!;Tiếp theo là Decission Tree (Cây ra quyết định),đây là công cụ hổ trợ việc ra quyết định 1 cách trực quan kết hợp 1 vài kiến thức về Statistic nhằm đưa ra các quyết định đầu tư 1 cách hiệu quả và kém rủi ro nhất. Đây là 1 lĩnh vực khoa học,thường gọi là Management Science(Khoa học quản lý). Điểm đặc thù của chuyên ngành ISE ( Kĩ Thuật Hệ Thống Công Nghiệp ) -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 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 -Trong khi kho dữ liệu và data smart 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ả những dữ liệu này. OLAP cung cấp nhiều lợi ích cho người phân tích , ví dụ như: 1. 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. 2. 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 3. Dữ liệu được tính toán trước 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 4. 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 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 do thực thi các truy vấn này trong hệ thống OLTP(On Line Transaction Process) sẽ không thể cho kết quả hoặc sẽ mất rất nhiều thời gian. OLAP bao gồm việc tập hợp một số lượng khổng lồ các dữ liệu hết sức đa dạng, có thể là hàng triệu mục dữ liệu trong các mối quan hệ phức tạp. Mục tiêu của OLAP là phân tích các mối quan hệ đó và tìm kiếm các mô hình, xu hướng, và các ngoại lệ OLAP cũng được định nghĩa là hình thức phân tích nhanh thông tin đa chiều (multidimension) được chia sẻ giữa những người sử dụng, hỗ trợ xử lý các kết quả theo logic và nguyên tắc thống kê, thực hiện các yêu cầu về bảo mật và các yêu cầu về cập nhật đồng thời (tức là khi hai transaction cùng diễn ra). Hệ thống phải cung cấp dữ liệu dưới nhiều góc độ (tính đa chiều), kể cả khả năng hỗ trợ đa cấp (multi hierarchies). Trong mô hình dữ liệu OLAP, thông tin được định nghĩa như các khối hộp (cubes) với các chiều (các mục mô tả) và các thước đo (các giá trị lượng hoá). Với mô hình dữ liệu đa chiều, người sử dụng có thể dễ dàng lập những truy vấn (query) phức tạp, sắp xếp dữ liệu trên một báo cáo, chuyển từ giản lược sang dữ liệu chi tiết, lọc và phân tách dữ liệu thành các tập hợp phụ (subset). Ví dụ, các chiều đặc thù trong một khối hộp chứa các thông tin bán hàng gồm thời gian, vị trí, sản phẩm, kênh phân phối, tổ chức, doanh số dự trù và trên thực tế. Các thước đo đặc thù có thể bao gồm doanh thu ($), đơn vị bán, tồn kho, thu nhập, và chi phí. Trong mỗi chiều của một mô hình dữ liệu OLAP, dữ liệu có thể được sắp xếp trong một hệ phân bậc theo mức độ chi tiết của dữ liệu. Ví dụ, trong chiều thời gian có thể có 3 mức: năm, tháng, và ngày. Tương tự, trong chiều địa lý có thể có các mức: nước, vùng, tỉnh, và thành phố. Cá biệt có mô hình dữ liệu OLAP chứa các giá trị đặc trưng riêng với từng mức của hệ phân bậc. Người sử dụng sẽ xem xét dữ liệu OLAP sẽ truy cập theo các mức độ để biết thông tin nào nhiều hay ít chi tiết hơn. 2.Mô hình dữ liệu đa chiều là gì? -Các nhà quản lý kinh doanh thường có xu hướng suy nghĩ theo “nhiều chiều ”. ví dụ họ có khuynh hướng mô tả những gì mà công ty làm theo cách 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 thông qua thời gian” Từ đó những người thiết kế kho dữ liệu sẽ lắng nghe cẩn thận những từ đó và 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 thông qua thời gian” 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 .Các điểm trong khối là các giao điểm của cạnh .Với mô tả kinh doanh như trên , các cạnh của khối là sản phẩm, thị trường ,thời gian (mô tả như hình dưới) -Một khối dữ liệu không nhất thiết là 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 .Những cạnh của khối được gọi là các chiều , 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 bảng có thể kết hợp với 1 bảng chiều nhằm mô tả cho điều đó. Ví dụ: một bản chiều của sản phẩm có thể chứa những thuộc tính như MA_SP,TEN_SP,MO_TA, HANG, LOAI_SP…vv mà có thể được chỉ ra bởi nhà quản trị hay nhà phân tích dữ liệu. Với những chiều không được phân loại như trường thời gian ,hệ thống kho dữ liệu tự động phát sinh tương ứng với bảng chiều dựa trên loại dữ liệu. cần phải 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 hỗ trợ quyết định cho các khuynh hướng phân tích. 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 đó muốn một mô hình dữ liệu đa chiều đặc thù được tổ chức xung quanh một chủ thể mà được thể hiện bởi 1 bàng sự kiện 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, tồn kho, doanh thu , ngân sách …vv mỗi độ đo số học phụ thuộc vào 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ụ sự kết hợp của Sản phẩm, thời gian , thị trường vào 1 thời điểm là độ đo duy nhất so với sự kết hợp khác. Các chiều được phân cấp theo loại, VD như chiều thời gian có thể được môt tả bởi các thuộc tính năm, quý,tháng, ngày. Mặt khác các thuộc tính của 1 chiều có thể được tổ chức vào một lưới mà chỉ ra 1 phần trật tự của chiều. Vì vậy nếu mỗi chiều chứa nhiều mức trừu tượng , dữ liệu đượ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 : • Roll-up // tăng mức độ trừu tượng • Drill-down //giảm mức độ trừu tượng, hay tăng mức chi tiết • Slice and dice //chọn và chiếu • Pivot //định hướng lại khung nhìn đa chiều của DL 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ư là xử lý phân tích trực tuyến (OLAP). 3.Giới thiệu dịch vụ OLAP (OLAP Services ) của Microsoft SQL Server Dịch vụ OLAP là 1 server tầng giữa (Midle-tier Server) phục vụ cho phân tích xử lý trực tuyến. Hệ thống dịc vụ OLAP là một công cụ mạnh trong việc xây dựng các khối đa chiều của dữ liệu cho phân tích và cung cấp khả năng truy vấn nhanh đến thông tin khối cho client. Kiến trúc dich vụ OLAP được chia làm 2 phần (Như hình dưới) +Phần Server : được đại diện bởi OLAP server +Phần Client : được đại diện bởi PivotTable -cả dịch vụ OLAP và PivotTable đều cho phép thiết kế, quản lý và tạo mới các cube (khối) từ kho dữ liệu và cho phép client truy xuất đến dữ liệu của OLAP *Các Đặc Điểm Của OLAP Service 1. Dễ sử dụng 2. Linh động 3. Các khối có thể ghi(Write enable) 4. Kiến trúc có thể co giãn 5. Tích hợp các công cụ quản trị , bảo mật nguồn dữ liệu và client/server caching 6. Hỗ trợ rộng rãi các hàm API và kiến trúc mở để hỗ trợ các ứng dụng tùy ý 4.So sánh OLAP với OLTP (On Line Transaction Process ) Nếu hệ thống xử lý chuyển giao dữ liệu OLTP tập trung vào việc thu thập, lưu trữ và biến đổi dữ liệu một cách chuẩn xác, thì OLAP (OnLine Analytical Processing) tập trung vào việc sử dụng các dữ liệu đã được biến đổi vào việc ra quyết định sản xuất kinh doanh. OLAP là một mục trong các phần mềm cơ sở dữ liệu cung cấp giao diện qua đó người sử dụng có thể biến đổi hoặc giới hạn các dữ liệu sơ khai tuỳ theo các hàm đã định nghĩa hoặc do chính người sử dụng định nghĩa, sau đó nhanh chóng kiểm tra các kết quả trong các chiều khác nhau của dữ liệu. 5.Các mô hình lưu trữ hỗ trợ OLAP 5.1 Mô hình OLAP quan hệ (ROLAP) lưu trữ dữ liệu cơ sở và thông tin tổng hợp dưới các dạng 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ản của data mart hoặc kho dữ liệu. Lưu trữ các khối trong cấu trúc ROLAP tốt nhất cho các truy vấn không thường xuyên -Ưu Điểm của ROLAP : 1. ROLAP cho phép cube-builder tự động tạo chỉ mục 2. ROLAP ánh xạ các tổng hợp có sẵn từ data mart hay kho dữ liệu 3. ROLAP tạo đòn bẩy cho Hệ Quản Trị CSDL quan hệ 4. ROLAP hỗ trợ Microsoft SQL server ,Orcle,Acess, Open Database Connectivity (ODBC) 5.2 Mô hình OLAP đa chiều (MOLAP) Lưu trữ dữ liệu cơ sở (dữ liệu từ các bảng của data mart hoặc kho dữ liệu) Và thông tin tổng hợp trong các cấu trúc đa chiều gọi là các khối cube. Cấu trúc này được lưu bên ngoài của data mart hay kho dữ liệu Lưu trữ các khối (cube ) trong MOLAP là tốt nhất cho các truy vấn thường xuyên và cần thời gian hồi đáp nhanh +Ưu Điểm MOLAP: 1. 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 2. Các thao tác kết nối (join) là 1 trong thao tác tốn chi phí nhất của mô hình quan hệ mà không cần thiết 3. Sử dụng thuật toán nén dữ liệu cho phép dữ liệu ít không gian hơn 4. Sử dụng chỉ mục bitmap cho hiệu qua thực thi tốt hơn 5. Lấy dữ liệu trong khối rất nhanh do sử dụng truy vấn tốc độ cao và cache dữ liệu 6. Không sử dụng cơ chế khóa vì dữ liệu chỉ đọc 7. Có thể được nạp trước vào cache 8. Dữ liệu dễ dàng sao chép đến client cho phân tích trực tuyến (off-line) [...]...5.3 Mô hình dữ liệu Hybird OLAP (HOLAP) Là sự kết hợp giữa MOLAP và ROLAP +Ưu Điểm HOLAP: 1 Lấy dữ liệu khối nhanh hơn (ưu điểm của MOLAP) 2 Tiêu thụ ít không gian lưu trữ hơn MOLAP 3 Tránh trùng lặp dữ liệu 6.Kiến trúc khối của OLAP (OLAP Cube) Đối tượng chính của OLAP là các 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: 1 Data source : dữ liệu nguồn chỉ ra nơi... dữ liệu cung cấp dữ liệu cho khối 2 Dimensions : các chiều được ánh xạ từ thông tin của các bảng chiều 3 Measures : các độ đo xác định các giá trị số từ bảng sự kiện 4 Partition : các phần dành riêng 7.Kiến trúc dịch vụ OLAP Gồm 2 thành phần là Server và Client + Server: Dịch vụ OLAP của SQL server cung cấp thành phần server có khả năng tạo và quản lý dữ liệu OLAP đa chiều , đồng thời cung cấp dữ liệu... kho CSDL quan hệ và lưu trữ chúng trong các cấu trúc khối đa chiều MOLAP, trong cơ sở DL quan hệ ROLAP hoặc HOLAP Siêu dữ liệu của cấu trúc khối đa chiều được lưu trữ trong một kho (repository) trong CSDL quan hệ +Client Thành phần client là dịch vụ PivotTable giao tiếp với OLAP server và cung cấp giao diện cho các ứng dụng client sử dụng truy cập dữ liệu trên OLAP server bằng cách sử dụng giao diện... client sử dụng truy cập dữ liệu trên OLAP server bằng cách sử dụng giao diện OLE DB hoặc mô hình ADO (Microsoft ActiveX Data Object) II.NguồnThamkhảo http://tailieu.vn/xem-tai-lieu/module-1-introduction-to-data-warehousing-andolap.66778.html http://tailieu.vn/download/document/MTExMDYzMTQ0Njc5OQ==.NDQ2Nzk5 html và các tài liệu tham khảo trên mạng . Bài Tập Chuyên Đề SV : Nguyễn Thành Long Lớp : D07CNPM1 Version 1.0 : OLAP -On Line Analytical Processing I.Nội Dung Chính 1.OLAP là