Kho dữ liệu

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.

Đị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, sắ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
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

Ngôn ngữ cho kho dữ liệu
Ngôn ngữ xử lý phân tích trực tuyến (OLAP - On-Line Analytical Processing), 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.
Rút ngắn (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
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 trung
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ối quan hệ giữa kho dữ liệu và khai phá dữ liệu
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
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:
Thương mại điện tử
Quản lý quan hệ khách hàng (CRM - Customer Relationship Management)
Chăm sóc sức khỏe
Viễn thông

Xem thêm
Business intelligence
Business performance management
Cơ sở dữ liệu
Data stream mining
Kho tài liệu (Document warehouse)
Java Data Mining
Linear discriminant analysis
Logit (in reference to logistic regression)
Principal components analysis
Phân tích hồi qui (Regression analysis)
Tham khảo