Kho dữ liệu - Tổng quan
Kho dữ liệu bao gồm dữ liệu từ multiple heterogeneous data sourcesvà được sử dụng để báo cáo phân tích và ra quyết định. Kho dữ liệu là nơi trung tâm lưu trữ dữ liệu từ các nguồn dữ liệu và ứng dụng khác nhau.
Thuật ngữ Kho dữ liệu được Bill Inmom phát minh lần đầu tiên vào năm 1990. Kho Dữ liệu luôn được giữ tách biệt với Cơ sở dữ liệu hoạt động.
Dữ liệu trong hệ thống DW được tải từ các hệ thống giao dịch hoạt động như -
- Sales
- Marketing
- HR
- SCM, v.v.
Nó có thể đi qua kho dữ liệu hoạt động hoặc các biến đổi khác trước khi được tải vào hệ thống DW để xử lý thông tin.
Kho dữ liệu được sử dụng để báo cáo và phân tích thông tin và lưu trữ cả dữ liệu lịch sử và hiện tại. Dữ liệu trong hệ thống DW được sử dụng cho báo cáo Phân tích, sau này được các Nhà phân tích kinh doanh, Giám đốc bán hàng hoặc Nhân viên tri thức sử dụng để ra quyết định.
Trong hình ảnh trên, bạn có thể thấy rằng dữ liệu đến từ multiple heterogeneous datanguồn vào Kho dữ liệu. Các nguồn dữ liệu phổ biến cho một kho dữ liệu bao gồm:
- Cơ sở dữ liệu hoạt động
- Ứng dụng SAP và không phải SAP
- Tệp phẳng (tệp xls, csv, txt)
Dữ liệu trong kho dữ liệu được người dùng BI (Business Intelligence) truy cập để Báo cáo Phân tích, Khai thác và Phân tích Dữ liệu. Điều này được sử dụng để đưa ra quyết định bởi Người dùng doanh nghiệp, Giám đốc bán hàng, Nhà phân tích để xác định chiến lược trong tương lai.
Đặc điểm của Kho dữ liệu
Nó là một kho dữ liệu trung tâm, nơi dữ liệu được lưu trữ từ một hoặc nhiều nguồn dữ liệu không đồng nhất. Hệ thống DW lưu trữ cả dữ liệu hiện tại và dữ liệu lịch sử. Thông thường một hệ thống DW lưu trữ dữ liệu lịch sử từ 5-10 năm. Một hệ thống DW luôn được giữ riêng biệt với một hệ thống giao dịch hoạt động.
Dữ liệu trong hệ thống DW được sử dụng cho các loại báo cáo phân tích khác nhau, từ so sánh hàng quý đến hàng năm.
Kho dữ liệu Cơ sở dữ liệu hoạt động Vs
Sự khác biệt giữa Kho dữ liệu và Cơ sở dữ liệu hoạt động như sau:
An Operational System được thiết kế cho các khối lượng công việc và giao dịch đã biết như cập nhật bản ghi người dùng, tìm kiếm bản ghi, v.v. Tuy nhiên, các giao dịch Kho dữ liệu phức tạp hơn và trình bày dạng dữ liệu chung.
An Operational System chứa dữ liệu hiện tại của một tổ chức và Kho dữ liệu thường chứa dữ liệu lịch sử.
An Operational Databasehỗ trợ xử lý song song nhiều giao dịch. Cần có cơ chế kiểm soát và phục hồi đồng thời để duy trì tính nhất quán của cơ sở dữ liệu.
An Operational Database truy vấn cho phép đọc và sửa đổi các hoạt động (chèn, xóa và Cập nhật) trong khi truy vấn OLAP chỉ cần quyền truy cập chỉ đọc đối với dữ liệu được lưu trữ (câu lệnh Chọn).
Kiến trúc của Kho dữ liệu
Kho dữ liệu liên quan đến việc làm sạch dữ liệu, tích hợp dữ liệu và hợp nhất dữ liệu. Kho dữ liệu có kiến trúc 3 lớp -
Lớp nguồn dữ liệu
Nó xác định cách dữ liệu đến Kho dữ liệu. Nó liên quan đến các nguồn dữ liệu khác nhau và hệ thống giao dịch hoạt động, tệp phẳng, ứng dụng, v.v.
Lớp tích hợp
Nó bao gồm Kho dữ liệu hoạt động và khu vực Staging. Khu vực dàn dựng được sử dụng để thực hiện xóa dữ liệu, chuyển đổi dữ liệu và tải dữ liệu từ các nguồn khác nhau vào kho dữ liệu. Vì nhiều nguồn dữ liệu có sẵn để trích xuất tại các múi giờ khác nhau, nên khu vực tổ chức được sử dụng để lưu trữ dữ liệu và sau đó áp dụng các phép biến đổi trên dữ liệu.
Lớp trình bày
Điều này được sử dụng để thực hiện báo cáo BI của người dùng cuối. Dữ liệu trong hệ thống DW được người dùng BI truy cập và được sử dụng để báo cáo và phân tích.
Hình minh họa sau đây cho thấy kiến trúc chung của Hệ thống Kho dữ liệu.
Đặc điểm của Kho dữ liệu
Sau đây là các đặc điểm chính của Kho dữ liệu:
Subject Oriented - Trong hệ thống DW, dữ liệu được phân loại và lưu trữ bởi một chủ thể kinh doanh chứ không phải theo ứng dụng như kế hoạch vốn chủ sở hữu, cổ phần, khoản vay, v.v.
Integrated - Dữ liệu từ nhiều nguồn dữ liệu được tích hợp trong một Kho dữ liệu.
Non Volatile- Dữ liệu trong kho dữ liệu là không biến động. Nó có nghĩa là khi dữ liệu được tải trong hệ thống DW, nó không bị thay đổi.
Time Variant- Hệ thống DW chứa dữ liệu lịch sử so với hệ thống Giao dịch chỉ chứa dữ liệu hiện tại. Trong Kho dữ liệu, bạn có thể xem dữ liệu của 3 tháng, 6 tháng, 1 năm, 5 năm, v.v.
OLTP so với OLAP
Đầu tiên, OLTP là viết tắt của Online Transaction Processing, trong khi OLAP là viết tắt của Online Analytical Processing
Trong hệ thống OLTP, có một số lượng lớn các giao dịch trực tuyến ngắn như CHÈN, CẬP NHẬT và XÓA.
Trong khi đó, trong hệ thống OLTP, một biện pháp hiệu quả là thời gian xử lý các giao dịch ngắn và rất ít. Nó kiểm soát tính toàn vẹn của dữ liệu trong môi trường đa truy cập. Đối với hệ thống OLTP, số lượng giao dịch mỗi giây đo lường hiệu quả. Hệ thống Kho dữ liệu OLTP chứa dữ liệu hiện tại và chi tiết và được duy trì trong các lược đồ trong mô hình thực thể (3NF).
For Example -
Hệ thống giao dịch hàng ngày trong một cửa hàng bán lẻ, nơi hồ sơ khách hàng được chèn, cập nhật và xóa hàng ngày. Nó cung cấp xử lý truy vấn nhanh hơn. Cơ sở dữ liệu OLTP chứa dữ liệu chi tiết và hiện tại. Lược đồ được sử dụng để lưu trữ cơ sở dữ liệu OLTP là mô hình Thực thể.
Trong hệ thống OLAP, số lượng giao dịch ít hơn so với hệ thống giao dịch. Các truy vấn được thực hiện có bản chất phức tạp và liên quan đến tổng hợp dữ liệu.
Một tập hợp là gì?
Chúng tôi lưu các bảng với dữ liệu tổng hợp như hàng năm (1 hàng), hàng quý (4 hàng), hàng tháng (12 hàng) hoặc lâu hơn, nếu ai đó phải thực hiện so sánh hàng năm thì chỉ một hàng sẽ được xử lý. Tuy nhiên, trong một bảng chưa tổng hợp, nó sẽ so sánh tất cả các hàng. Đây được gọi là Tổng hợp.
Có nhiều hàm Tổng hợp khác nhau có thể được sử dụng trong hệ thống OLAP như Tổng, Trung bình, Tối đa, Tối thiểu, v.v.
For Example -
SELECT Avg(salary)
FROM employee
WHERE title = 'Programmer';
Sự khác biệt chính
Đây là những điểm khác biệt chính giữa hệ thống OLAP và OLTP.
Indexes - Hệ thống OLTP chỉ có ít chỉ mục trong khi trong hệ thống OLAP có nhiều chỉ mục để tối ưu hóa hiệu suất.
Joins- Trong hệ thống OLTP, số lượng lớn các phép nối và dữ liệu được chuẩn hóa. Tuy nhiên, trong một hệ thống OLAP có ít kết nối hơn và được khử chuẩn hóa.
Aggregation - Trong hệ thống OLTP, dữ liệu không được tổng hợp trong khi trong cơ sở dữ liệu OLAP, nhiều tập hợp hơn được sử dụng.
Normalization - Hệ thống OLTP chứa dữ liệu chuẩn hóa tuy nhiên dữ liệu không được chuẩn hóa trong hệ thống OLAP.
Kho dữ liệu Data Mart Vs
Data mart tập trung vào một khu vực chức năng duy nhất và đại diện cho dạng đơn giản nhất của Data Warehouse. Hãy xem xét một Kho dữ liệu chứa dữ liệu cho Bán hàng, Tiếp thị, Nhân sự và Tài chính. Data mart tập trung vào một lĩnh vực chức năng duy nhất như Bán hàng hoặc Tiếp thị.
Trong hình ảnh trên, bạn có thể thấy sự khác biệt giữa Kho dữ liệu và siêu thị dữ liệu.
Bảng dữ kiện so với thứ nguyên
Bảng dữ kiện đại diện cho các biện pháp phân tích được thực hiện. Nó cũng chứa các khóa ngoại cho các khóa thứ nguyên.
For example - Mỗi cuộc mua bán là một sự thật.
Id Cust | Id Sản phẩm | Id thời gian | Số lượng đã bán |
---|---|---|---|
1110 | 25 | 2 | 125 |
1210 | 28 | 4 | 252 |
Bảng Thứ nguyên thể hiện các đặc điểm của một thứ nguyên. Thứ nguyên Khách hàng có thể có Tên_Khách hàng, Điện thoại_Không, Giới tính, v.v.
Id Cust | Cust_Name | Điện thoại | Tình dục |
---|---|---|---|
1110 | Sally | 1113334444 | F |
1210 | Adam | 2225556666 | M |