Bản chất đa chiều của các câu hỏi trong nghiệp vụ đƣợc phản ánh trong thực tế chẳng hạn nhƣ những ngƣời quản lý thị trƣờng không đƣợc thoả mãn nữa với câu hỏi theo một chiều đơn giản: ―Ngân khố quốc gia bị thâm hụt bao nhiêu để phục vụ cho một sản phẩm mới được ra đời?”. Thay vào đó họ đặt ra những câu hỏi nhƣ sau: "Ngân khố quốc gia bị thâm hụt bao nhiêu để phục vụ cho một sản phẩm mới được ra đời trong một tháng, ở khu vực tây nam, bị người sử dụng phá hỏng, theo mỗi cửa hàng bán sản phẩm, liên quan tới phiên bản trước đó của sản phẩm, so sánh với kế hoạch?". Đó là một câu hỏi 6 chiều. Một cách để quan sát một mô hình dữ liệu nhiều chiều là nhìn nó nhƣ một hình khối [1].
Hình sau thể hiện câu truy vấn theo bốn chiều: sản phẩm, thị trƣờng, thời gian và đơn vị sản phẩm bán đƣợc.
Hình 1.20 Mô hình dữ liệu đa chiều
Bảng nằm bên trái chứa dữ liệu bán hàng chi tiết theo sản phẩm, thị trƣờng và thời gian. Hình khối nằm bên phải mô tả số lƣợng hàng bán đƣợc theo các chiều: theo loại sản phẩm, theo thị trƣờng và theo thời gian với các biến đơn vị đƣợc tổ chức nhƣ là các tế bào trong các dãy. Hình khối này có thể đƣợc mở rộng bao gồm thêm một dãy khác, theo một chiều khác nữa là giá tiền liên quan tới tất cả hoặc chỉ một vài chiều (gía tiền của một sản phẩm có thể hoặc không thay đổi theo thời gian hoặc không thay đổi từ thành phố này tới thành phố khác). Khối này đƣợc hỗ trợ tính toán ma trận cho phép khối này thể hiện cả dãy số tiền bán đƣợc đơn giản bằng cách thực hiện một phép toán ma trận trên tất cả các ô của dãy này (số tiền bán đƣợc = số lƣợng * giá tiền).
Thời gian trả lời một truy vấn nhiều chiều phụ thuộc vào số lƣợng các ô đƣợc thêm vào trong quá trình thực hiện. Khi số lƣợng chiều tăng thì số ô của khối này tăng theo cấp số mũ. Bên cạnh đó, những truy vấn đa chiều đều liên quan tới những dữ liệu ở mức cao và dữ liệu tổng. Vì vậy, giải
pháp để xây dựng một cơ sở dữ liệu đa chiều có hiệu quả là phải kết hợp từ trƣớc tất cả các tổng con logic và các tổng theo tất cả các chiều. Sự kết hợp trƣớc này đặc biệt có giá trị khi các chiều mang tính phân cấp. Ví dụ, theo chiều thời gian có thể phân rã thành năm, qúy, tháng, tuần, và ngày. Một sự phân cấp đƣợc định nghĩa từ trƣớc đối với các chiều cho phép có một sự kết hợp logic từ trƣớc và cũng cho phép thực hiện khả năng khoan sâu (drill_down) dữ liệu, từ một nhóm các sản phẩm xuống từng sản phẩm riêng rẽ, từ việc bán hàng theo từng năm xuống theo tuần, ...
Một cách khác để giảm kích thƣớc của khối là quản lý một lƣợng dữ liệu thƣa hơn một cách thích hợp. Bởi vì thƣờng thì không phải tất cả các dữ liệu đều có nghĩa đối với tất cả các chiều (nhiều cơ sở dữ liệu có hơn 95% trong tổng số các ô không chứa số liệu hoặc có dữ liệu = 0). Một loại dữ liệu thƣa khác đƣợc tạo ra khi có nhiều ô chứa dữ liệu bị lặp lại (ví dụ nhƣ nếu khối chứa một chiều giá tiền, cùng một giá tiền có thể là đƣợc dùng cho tất cả các thị trƣờng và trong tất cả các quí của năm). Khả năng của cơ sở dữ liệu đa chiều bỏ qua các ô không có dữ liệu hoặc dữ liệu bị lặp lại có thể giảm đƣợc khá nhiều kích thƣớc của khối và số lƣợng các xử lý.
Sự phân cấp về kích thƣớc, quản lý dữ liệu thƣa hơn và sự kết hợp trƣớc là quan trọng vì chúng làm giảm đáng kể kích cỡ của cơ sở dữ liệu và những yêu cầu tính toán các giá trị. Một thiết kế nhƣ vậy loại bỏ việc phải kết hợp nhiều bảng và cung cấp sự truy nhập trực tiếp và nhanh tới các câu trả lời vì vậy cải thiện đáng kể tốc độ trong việc thực hiện các truy vấn đa chiều.
Dữ liệu p hát sinh từ các hoạt động hàng ngày và đƣợc thu thập xử lý để phục vụ công việc nghiệp vụ cụ thể của một tổ chức thƣờng đƣợc gọi là dữ liệu tác nghiệp (operational data) và hoạt động thu thập xử lý loại dữ liệu này đƣợc gọi l à xử lý giao dịch trực tuyến (On_line Transaction Processing - OLPT)
Ví dụ: Về công việc quản lý đào tạo của trƣờng Đại học Tây Nguyên, công công việc hàng ngày nhƣ là: bổ sung thêm 1 sinh viên vào danh sách của 1 lớp nào đó, hay là xóa tên sinh viên đó ra khỏi danh sách của lớp khi em đó bị buộc thôi học…Những thao tác đó đƣợc gọi là xử lý giao dịch trực tuyến.
Mục đích chính của phƣơng pháp DW là cung cấp thông tin cho những nhà kinh doanh để tạo những quyết định chiến lƣợc. Xử lý phân tích là một cách cơ bản để có đƣợc những thông tin có giá trị từ các kho dữ liệu nhằm giải quyết những thách thức lớn mà các nhà quản lý đang phải đối mặt.
Trong các kho dữ liệu lớn, đa chiều thƣờng chứa nhiều thông tin ẩn kín mà các công cụ truyền thống nhƣ kỹ thuật truy vấn SQL rất khó và nhiều khi không phát hiện đƣợc. Hơn thế nữa do yêu cầu của ngƣời sử dụng liên tục thay đổi, đòi hỏi các câu trả lời phải đƣợc xử lý theo thứ tự khác nhau: lúc theo vùng, khi thì theo thời gian, khi khác lại theo nhóm tuổi, …Do vậy đòi hỏi xử lý phân tích trực tuyến trên những tập dữ liệu lớn và hỗn hợp.
OLAP là công nghệ xử lý phân tích trực tuyến. Bản chất cốt lõi của OLAP là dữ liệu đƣợc lấy ra từ DW hoặc DM sau đó đƣợc chuyển thành mô hình đa chiều và đƣợc lƣu trữ trong một kho dữ liệu đa chiều (dữ liệu đƣợc lƣu trữ theo mảng thay vì bản ghi nhƣ mô hình quan hệ). Các dịch vụ
(hay công cụ) OLAP lấy dữ liệu trong kho dữ liệu để thực hiện các công việc phân tích đặc biệt, phức tạp theo nhiều chiều để hỗ trợ cho việc ra quyết định [1].
Ví dụ: Các nhà lãnh đạo của trƣờng đại học Tây Nguyên muốn biết đƣợc số lƣợng sinh viên là ngƣời Ê đê thi đỗ vào khoa Sƣ phạm qua một số năm để có những chính sách thu hút đối với ngƣời đồng bào này, để họ có thể về phục vụ cho buôn làng. Đây là một câu hỏi 4 chiều và có phụ thuộc theo thời gian nên chúng ta sử dụng công cụ phân tích OLAP trong trƣờng hợp này sẽ đạt đƣợc hiệu quả cao.
OLAP là một chức năng thông minh trong nghiệp vụ, làm cho các thông tin trong xí nghiệp có thể hiểu đƣợc. OLAP khiến cho ngƣời sử dụng đầu cuối có thể hiểu đƣợc bản chất bên trong thông qua việc truy cập nhanh, tƣơng tác tới các khung nhìn nhiều dạng của thông tin đƣợc chuyển đổi từ các dữ liệu thô để phản ánh sự đa dạng nhiều chiều thực tế của công ty.
Các nguồn dữ liệu cho một ứng dụng OLAP bao gồm cơ sở dữ liệu đa chiều, cơ sở dữ liệu quan hệ và các dữ liệu bảng tính (lấy từ bất kỳ 1 kiến trúc CSDL nào). Có 2 loại OLAP điển hình là OLAP quan hệ (Relational Online Analytical Processing – ROLAP) và OLAP đa chiều (Multidimesional Online Analytical Processing – MOLAP).
1.5.1. ROLAP (Relational OLAP)
ROLAP thao tác trực tiếp với cơ sở dữ liệu quan hệ. Dữ liệu cơ bản và các bảng chiều đƣợc lƣu trữ dƣới dạng các bảng quan hệ và những bảng mới sẽ đƣợc tạo để lƣu trữ những thông tin tổng hợp, tùy thuộc vào mô hình thiết kế đƣợc chuyên biệt hóa.
Phƣơng pháp tiếp cận này bao gồm cả OLAP và cơ sở dữ liệu quan hệ. Các dữ liệu đƣợc lƣu trữ trong bảng quan hệ và có thể có kích thƣớc hàng trăm Gigabyte. Những hệ ROLAP cung cấp các mô tơ truy vấn cực kỳ linh động bằng việc ―chuẩn bị sẵn sàng‖ tất cả các dữ liệu tác nghiệp cho ngƣời sử dụng đầu cuối, dễ dàng trích và tổng hợp dữ liệu theo yêu cầu. Những công cụ ROLAP có thể trích dữ liệu từ rất nhiều nguồn CSDL quan hệ khác nhau.
Theo cách tiếp cận này, các khối dữ liệu con sẽ đƣợc tính toán trƣớc khi đƣa vào bảng tổng hợp (summary table). Đối với những khối dữ liệu lớn thì không thể xử lý mọi thứ trƣớc đƣợc mà chỉ xử lý trƣớc những dữ liệu nào có liên quan chặt chẽ đến các câu truy vấn.