|
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. OLAP trước hết 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 lô gíc 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.
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: 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, và 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 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 những 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.
Việc chuyển đổi dữ liệu OLTP sang dữ liệu OLAP trong kho lưu trữ được thực hiện thông qua các quy 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ã hoá 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ả 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.
OLAP sau đó tăng tốc độ chuyển giao thông tin tới người sử dụng các cấu trúc dữ liệu đa chiều này bằng cách tính toán các giá trị trong dữ liệu trước khi thực hiện lệnh. Sự kết hợp giữa khả năng duyệt dữ liệu dễ dàng và kết qủa nhanh chóng cho phép người sử dụng xem và phân tích dữ liệu nhanh và hiệu quả hơn so với các công nghệ chỉ liên kết trong cơ sở dữ liệu. Từ đó, người sử dụng sẽ có nhiều thời gian hơn trong việc phân tích dữ liệu và tiết kiệm được thời gian hơn trong việc phân tích cơ sở dữ liệu. Trịnh Minh Giang vietmanagement.com | 01.03.2004
|