I. Data warehouse (DWH)
1. Hoàn cảnh ra đời data warehouse
Với các hệ quản trị CSDL thông thường như online transaction processing (OLTP) thường được thiết kế thoả mãn chuẩn 3NF. Đặc điểm của hệ thống OLTP là nó lưu trữ các dữ liệu "thô", có nghĩa là mức độ tổng quát, trừu tượng của dữ liệu này rất thấp. Với hệ thống OLTP, việc trả lời những câu hỏi như tổng sản phẩm bán được 6 tháng đầu năm, tổng lợi nhuận của một mặt hàng trong quý,... là tương đối phù hợp.
Tuy nhiên đối với các nhà điều hành cấp cao, cần phải trả lời những câu hỏi có mức độ tổng quát cao hơn như: lượng tiêu thụ tại công ty A hay B, khu vực A hay B đang tăng hay giảm, nếu thay đổi 3%-5% giá của sản phẩm A tại khu vực B, tình trạng tiêu thụ sẽ thay đổi ra sao trong 6 tháng cuối năm và tại sao?
Từ yêu cầu trên, data warehouse ra đời nhằm phục vụ giải quyết những bài toán lớn hơn.
2. Data warehouse là gì?
DWH là một cơ sở dữ liệu quan hệ được thiết kế hướng tới truy vấn, phân tích dữ liệu một cách chính xác trên tập dữ liệu lớn. DWH là nơi lưu trữ các dữ liệu giao dịch có tính lịch sử được thu thập, xử lý từ nhiều nguồn khác nhau.
DWH ngoài một cơ sở dữ liệu, còn cần rất nhiều thành phần bổ xung để tạo nên một cấu trúc hoàn chỉnh, gồm tập hợp các công cụ ETL có nhiệm vụ xử lý, thu thập và load dữ liệu vào kho, công cụ tạo báo cáo, data mining,...
3. Đặc tính cơ bản của Data warehouse
Hướng chủ đề – Subject Oriented
Data warehouse được thiết kế để giúp phân tích dữ liệu. Ví dụ, để hiểu rõ hơn về dữ liệu kinh doanh của công ty, có thể xây dựng data warehouse lưu trữ dữ liệu xúc tích, cô đọng nhất trong dữ liệu kinh doanh, từ đó có thể giúp nhà quản lý trả lời được các câu hỏi như “Ai là khách hàng tốt nhất vào năm trước?”, “Ai sẽ là khách hàng tiềm năng vào năm tiếp theo?
Tính tích hợp – Integrated
Là một đặc tính quan trọng nhất của data warehouse, dữ liệu đưa vào data warehouse được tập hợp từ nhiều nguồn khác nhau, bao gồm các RMDB, flat files, các bảng ghi giao dịch trực tuyến.
Tính ổn định – Non Volatile
Dữ liệu trong data warehouse thường không thể thay đổi. Điều này có thể gây ra một số khó khăn nhưng hợp lý so với mục đích của data warehouse, phân tích những gì đã xảy ra.
Biến đổi theo thời gian – Time variant
Data warehouse tập trung vào những thay đổi theo mốc thời gian, với lượng dữ liệu lớn có tính lịch sử vậy có thể tìm ra những xu hướng trong kinh doanh.
II. Kiến trúc Data Warehouse căn bản
1. Kiến trúc 1 tầng
Kiến trúc đơn giản của hệ thống Data Warehouse gồm 3 phần:
- Data Source: Là nơi dữ liệu từ nhiều nguồn khác nhau được thu thập.
- Warehouse: Nơi lưu trữ dữ liệu đã được xử lý, gồm Metadata, Raw Data và Summary Data.
- User: Gồm các hệ thống phân tích, báo cáo và Mining.
Đây là một kiến trúc đơn giản với phần ETL (extraction, transformation, and loading) đã bị lược bỏ, người dùng cuối truy xuất dữ liệu trực tiếp từ các hệ thống xử lý nghiệp vụ thông qua data warehouse.
2. Kiến trúc 2 tầng
Tại kiến trúc 2 tầng, có thêm bước chuyển dạng và tích hợp dữ liệu. Dữ liệu trước khi đưa vào Data Warehouse, được tập hợp từ nhiều nguồn, chuyển đổi dạng và lưu trữ tại bước Staging Area, người dùng cuối truy xuất dữ liệu trực tiếp từ các hệ thống xử lý nghiệp vụ thông qua Data Warehouse.
3. Kiến trúc 3 tầng
Kiến trúc 3 tầng bổ sung thêm bước ETL, giúp phân Warehouse ra thành các chủ đề nhỏ hơn (Data mart).