OLAP (Online Analysis Processing)

Một phần của tài liệu Nghiệp vụ thông minh cho bài toán quản trị công nghệ thông tin (Trang 31 - 38)

1. Định nghĩa

OLAP là một hệ thống 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. [10]

Trong khi kho dữ liệu hoặc kho dữ liệu theo chủ đề (data mart) lưu trữ dữ liệu cho phân tích, thì OLAP 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, 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; 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; 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 cho thực thi các truy vấn này trong hệ thống xử lý giao dịch trực tuyến (On-line Transaction Processing - OLTP) sẽ không thể cho kết quả hoặc sẽ mất rất nhiều thời gian.

2. Cách thức tổ chức của OLAP

Hệ thống OLAP là một hệ thống quản lý dữ liệu giàu năng lực. Nó cho phép người sử dụng phân tích dữ liệu qua việc cắt lát (slice) dữ liệu theo nhiều khía cạnh khác nhau, đi sâu xuống (drill down) mức chi tiết hơn hay

cuộn lên (drill up) mức tổng hợp hơn của dữ liệu. Bản chất cốt lõi của OLAP là dữ liệu được lấy ra từ kho dữ liệu hoặc từ datamart, sau đó được chuyển thành mô hình đa chiều và được lưu trữ trong một khối dữ liệu đa chiều.

Đối tượng chính của OLAP là khối, một sự biểu diễn đa chiều của dữ liệu chi tiết và tổng thể. Một khối bao gồm một bảng sự kiện, một hoặc nhiều chiều, các đơn vịđo (Measures) và các phân hoạch (Partitions).

Hình 1.9: Khối dữ liệu – đối tượng của hệ thống OLAP

Cube: là phần tử chính trong xử lý phân tích trực tuyến, là tập con (subset) dữ liệu từ kho dữ liệu, được tổ chức và tổng hợp trong các cấu trúc đa chiều. Để xác định một khối, ta chọn một bảng sự kiện và các đơn vị đo lường đồng nhất (các cột số theo sự quan tâm của người dùng khối) trong bảng sự kiện đó. Sau đó, chọn các chiều, mỗi chiều gồm một hay nhiều cột từ bảng liên quan khác. Các chiều cung cấp mô tả rõ ràng bởi các đơn vị đo lường được chia ra của người dùng khối. Ví dụ: một khối cho phân tích đa dạng sinh học bao gồm các đơn vị đo lường SoLuong từ bảng Dadangsinhhoc_Fact, và các chiều Vung_Dim, Loai_Dim, và Thoigian_Dim. Mỗi chiều có thể chứa một hệ thống các cấp độ để chỉ sự phân chia rõ ràng của người dùng. Ví dụ:

Chiều Vung_Dim có thể gồm hệ thống các cấp độ: Châu lục, nước, vùng, tỉnh, thành. Mỗi cấp độ trong chiều lại chi tiết hơn mức cha của nó. Ví dụ: lục địa chứa các quốc gia, các bang hay các tỉnh chứa các thành phố. Tương tự, hệ thống chiều thời gian có thể gồm có các cấp độ năm, quý, tháng và ngày.

Chiều: Các chiều là cách mô tả chủng loại mà theo đó các dữ liệu số trong khối được phân chia để phân tích. Khi xác định một chiều, chọn một hoặc nhiều cột của một trong các bảng liên kết (bảng chiều). Nếu ta chọn các cột phức tạp thì tất cả cần có quan hệ với nhau, chẳng hạn các giá trị của chúng có thể được tổ chức theo hệ thống phân cấp đơn. Để xác định hệ thống phân cấp, sắp xếp các cột từ chung nhất tới cụ thể nhất. Ví dụ: một chiều thời gian (Time) được tạo ra từ các cột Năm, Qúy, Tháng, Ngày (Year, Quarter, Month và Day). Mỗi cột trong bảng chiều góp phần vào một cấp độ cho chiều. Các cấp độ được sắp đặt theo nét riêng biệt và được tổ chức trong hệ thống cấp bậc mà nó thừa nhận các con đường hợp logic cho việc đào sâu (drill down). Ví dụ: dimension thời gian được miêu tả ở trên cho phép người dùng khối đào sâu (drill down) từ năm tới qúy, từ qúy tới tháng và từ tháng tới ngày. Mỗi drill down cung cấp nét đặc trưng hơn.

Chiều có phân cấp: Phân cấp là cột sống của việc gộp dữ liệu hay nói một cách khác là dựa vào các phân cấp mà việc gộp dữ liệu mới có thể thực hiện được. Phần lớn các chiều đều có một cấu trúc đa mức hay phân cấp. Nếu chúng ta muốn tạo ra những quyết định về giá sản phẩm để tối đa doanh thu thì chúng ta cần quan sát ở những dữ liệu về doanh thu sản phẩm được gộp theo giá sản phẩm, tức là chúng ta đã thực hiện một cách gộp. Khi cần tạo những quyết định khác thì chúng ta cần thực hiện những phép gộp tương ứng khác. Như vậy có thể có quá nhiều tiến trình gộp. Thế nên các tiến trình gộp này cần phải được thực hiện một cách rất dễ dàng, linh hoạt để có thể hỗ trợ

những phân tích không hoạch định trước. Điều này có thểđược giải quyết trên cơ sở có sự trợ giúp của những phân cấp rộng và sâu:

- Drill up và Drill down dựa trên phân cấp chiều

- Dựa trên phân cấp theo chiều, từ một mức dưới, chúng ta có thể cuộn lên (Drill up) các mức trên, thực hiện một phép gộp, để có được kết qủa tổng hợp hơn. Và từ một mức trên, có thể khoan đi sâu xuống (Drill down) các mức dưới, để có các kết quả chi tiết hơn.

Các đơn vị đo lường (Measures): Các đơn vị đo của khối là các cột trong bảng sự kiện. Các đơn vị đo lường xác định những giá trị số từ bảng sự kiện mà được tổng hợp phân tích nhưđịnh giá, trị giá, hoặc số lượng.

Các phân hoạch (Partitions): Tất cả các khối đều có tối thiểu một phân hoạch để chứa dữ liệu của nó; một phân hoạch đơn được tựđộng tạo ra khi khối được định nghĩa. Khi ta tạo một phân hoạch mới cho một khối, phân hoạch mới này được thêm vào trong tập hợp các phân hoạch đã tồn tại đối với khối. Khối phản ánh dữ liệu đã được kết nối có trong tất cả các phân hoạch của nó. Một bảng phân hoạch của khối là vô hình đối với người dùng. Các phân hoạch tiêu biểu cho một công cụ mạnh, mềm dẻo cho việc quản trị các khối OLAP, đặc biệt các khối lớn. Ví dụ: một khối chứa thông tin thương mại có thể chứa trong một hoặc nhiều phân hoạch cho dữ liệu của những năm trước và các phân hoạch cho mỗi quý của năm hiện tại. Cuối năm các bảng phân hoạch của bốn quý có thểđược hợp nhất trong một phân hoạch đơn cho năm đó. Các bảng phân hoạch có thểđược lưu trữ với các sự lựa chọn kết hợp khác nhau theo phương thức lưu trữ, định vị dữ liệu nguồn và thiết kế kết hợp. Tính mềm dẻo này cho phép ta thiết kế các chiến lược lưu trữ khối thích hợp với các yêu cầu của ta.

3. Các mô hình của OLAP

Mô hình OLAP đa chiều (Multidimensional OLAP): thực hiện 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 kho dữ liệu theo chủđề) 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 cube dữ liệu. 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. Lưu trữ các 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. Hình 1.10 mô tả mô hình dữ liệu của một hệ thống MOLAP:

Hình 1.10: Mô hình dữ liệu MOLAP

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; thao tác kết nối 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 thực hiện trong MOLAP; 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 ánh xạ chỉ mục cho hiệu quả thực thi tốt hơn; MOLAP có thể được nạp trước vào bộ nhớ truy cập nhanh (cache), do đó MOLAP lấy dữ liệu trong cube rất nhanh bằng cách sử dụng các xử lý truy vấn tốc độ cao và

dữ liệu từ bộ nhớ truy cập nhanh (data cache); MOLAP không xử dụng cơ chế khoá vì dữ liệu là chỉ đọc; dữ liệu có thể dễ dàng sao chép đến client cho phân tích không trực tuyến.

Mô hình OLAP quan hệ (Relational OLAP- 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. Hình 1.11 mô tả mô hình dữ liệu của một hệ thống ROLAP

Hình 1.11: Mô hình dữ liệu ROLAP

Lưu trữ dữ liệu trong cấu trúc ROLAP cung cấp nhiều lợi ích như: 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ừ kho dữ liệu chủ đề (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).

Mô hình OLAP lai (Hybrid OLAP - HOLAP): là mô hình OLAP

được tạo ra bằng sự kết hợp giữa MOLAP và ROLAP. Lưu trữ các 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. Hình 1.12 mô tả mô hình dữ liệu của một hệ thống HOLAP.

Hình 1.12: Mô hình dữ liệu HOLAP

Việc sử dụng cấu trúc HOLAP để lưu trữ có nhiều lợi ích như: truy xuất dữ liệu trong 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.

4. Nhận xét chung về OLAP:

Trong khi kho dữ liệu và kho dữ liệu theo chủ đề lưu trữ dữ liệu cho phân tích, thì OLAP cho phép các ứng dụng client truy xuất hiệu quả dữ liệu này do OLAP cung cấp nhiều lợi ích cho người phân tích. Đố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. Trong khi đó, 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.

Với 3 mô hình tổ chức của OLAP là MOLAP, ROLAP và HOLAP, như đã phân tích ở trên, mỗi mô hình đều có những ưu/ nhược điểm riêng. Các ưu/ nhược điểm của từng mô hình được tổng hợp trong bảng 1.1 sau:

Bng 1.1: Bng so sánh các mô hình lưu tr d liu trong OLAP

Tiêu chí so sánh 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

Với phân tích lợi điểm trong 3 mô hình tổ chức của OLAP, 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 thực thi các truy vấn này trong hệ thống xử lý giao dịch trực tuyến (On-line Transaction Processing - OLTP) sẽ không thể cho kết quả hoặc sẽ mất rất nhiều thời gian.

Như vậy, trong phần này, luận văn đã có những phân tích chi tiết vềđặc điểm của 2 thành phần cấu thành một hệ thống BI là kho dữ liệu và OLAP. Với thiết kế này, giải pháp BI mang lại hoàn toàn có thể đáp ứng nhu cầu tổ chức và quản lý dữ liệu một cách khoa học; nhu cầu phân tích, khai thác thông tin; cụ thể hoá và đưa ra những thông tin mang tính định lượng trợ giúp việc đánh giá, hỗ trợ các quyết định với độ rủi ro thấp hơn, đáp ứng các yêu cầu nhất định trong những bài toán nghiệp vụ cụ thể.

Một phần của tài liệu Nghiệp vụ thông minh cho bài toán quản trị công nghệ thông tin (Trang 31 - 38)

Tải bản đầy đủ (PDF)

(101 trang)