Kho dữ liệu

Bách khoa toàn thư mở Wikipedia
Bước tới: menu, tìm kiếm

Kho dữ liệu (tiếng Anh: data warehouse) là kho lưu trữ dữ liệu lưu trữ bằng thiết bị điện tử của một tổ chức. Các kho dữ liệu được thiết kế để hỗ trợ việc phân tích dữ liệu và lập báo cáo[1]

Định nghĩa cổ điển này về kho dữ liệu tập trung vào việc lưu trữ dữ liệu. Tuy nhiên, các phương tiện cho việc lấy và phân tích, trích rút, biến đổi, nạp dữ liệu, và quản lý dữ liệu từ điển cũng được coi là các thành phần cốt yếu của một hệ thống kho dữ liệu. Nhiều người sử dụng thuật ngữ "kho dữ liệu" với ngữ cảnh rộng hơn. 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).

Giới thiệu

Trong quá trình hoạt động kinh doanh, các dữ liệu của doanh nghiệp phát sinh ngày càng nhiều. Người ta muốn tận dụng nguồn dữ liệu này để sử dụng cho những mục đích hỗ trợ cho công việc kinh doanh ví dụ như cho mục đích thống kê hay phân tích. Quá trình tập hợp và thao tác trên các dữ liệu này có những đặc điểm sau:

  • Dữ liệu tích hợp (Atomicity):Dữ liệu tập hợp từ nhiều nguồn khác nhau. Điều này sẽ dẫn đến việc quá trình tập hợp phải thực hiện việc làm sạch, xắp xếp, rút gọn dữ liệu.
  • Theo chủ đề (Consistency): Không phải tất cả các dữ liệu đều được tập hợp, người ta chỉ lấy những dữ liệu có ích.
  • Biến thời gian (Isolation): Các dữ liệu truy suất không bị ảnh hưởng bởi các dữ liệu khác hoặc tác động lên nhau.
  • Dữ liệu cố định (Durable): Khi một Transaction hoàn chỉnh, dữ liệu không thể tạo thêm hay sửa đổi.

Khái niệm[sửa | sửa mã nguồn]

Kho dữ liệu là một tập các dữ liệu có những đặc điểm sau: tập trung vào một chủ đề, tổng hợp từ nhiều nguồn dữ liệu khác nhau, từ nhiều thời gian, và không sửa đổi. Được dùng trong việc hỗ trợ ra quyết định trong công tác quản lý. Kho dữ liệu DWH

Cấu trúc dữ liệu cho kho dữ liệu[sửa | sửa mã nguồn]

Vì dữ liệu trong kho dữ liệu rất lớn và không có những thao tác như sửa đổi hay tạo mới nên nó được tối ưu cho việc phân tích và báo cáo. Các thao tác với dữ liệu của kho dữ liệu dựa trên cơ sở là Mô hình dữ liệu đa chiều (multidimensional data model), được mô hình vào đối tượng gọi là data cube. Data cube là nơi trung tâm của vấn đề cần phân tích, nó bao gồm một hay nhiều tập dữ kiện (fact) và các dữ kiện được tạo ra từ nhiều chiều dữ kiện khác nhau (dimention).

  • Ví dụ: Một thống kê doanh số bán hàng dựa trên ba yếu tố là: địa điểm, thời gian và chủng loại hàng. Data cube là vấn đề “Thống kê bán hàng” với ba chiều là ba yếu tố: địa điểm, thời gian và chủng loại hàng. Bảng fact là bảng tổng hợp dữ liệu của mối liên quan của doanh số với 3 yếu tố.

Ngôn ngữ cho kho dữ liệu[sửa | sửa mã nguồn]

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): ví dụ: nhóm dữ liệu theo năm thay vì theo quý.
  • Mở rộng (drill-down): 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).

Cấu trúc của một hệ thống kho dữ liệu[sửa | sửa mã nguồn]

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
Mô hình data warehouse 3 lớp

Mối quan hệ giữa kho dữ liệu và khai phá dữ liệu[sửa | sửa mã nguồn]

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
  • OLAP về cung cấp các tập lệnh rất hữu hiệu trong phân tích

Các lĩnh vực ứng dụng[sửa | sửa mã nguồn]

Có thể đưa vào ba mảng ứng dụng chính:

  • Xử lý thông tin như tạo ra các báo cáo và trả lời các câu hỏi định trước.
  • Phân tích và tổng hợp dữ liệu, kết quả được thể hiện bằng các báo cáo và bảng biểu.
  • Dùng trong các mục đích kế hoạch như khai khoáng dữ liệu.

Các lĩnh vực hiện tại có ứng dụng kho dữ liệu bao gồm:

Xem thêm[sửa | sửa mã nguồn]

  1. ^ Inmon, W.H. Tech Topic: What is a Data Warehouse? Prism Solutions. Volume 1. 1995.