MỤC LỤC
Lời cảm ơn
1
PHẦN I. KHÁI NIỆM DATA WAREHOUSE
2
Chương 1. Lịch sử phát triển của data warehouse 4
4
1.1. Thời kì tiền sử - trước năm 1980
7
1.2. Thời kì trung đại - từ giữa những năm 80 đến cuối những năm 80
8
1.3. Cuộc cách mạng dữ liệu - những năm đầu thập kỉ 90
10
1.4. Kỉ nguyên của quản lý dùa trên thông tin - tới những
năm của thế kỉ 21 11
1.5. Kết luận
11
13
Chương 2. Những khái niệm về data warehouse 15
15
2.1. Data warehouse là gì
2.2. Kiến trúc của data warehouse
15
18
2.2.1. Kiến trúc cơ bản18
18
2.2.2. Kiến trúc data warehouse có thêm
líp data mart và bước đệm xử lý20
Chương 3. Kiến trúc dữ liệu của data warehouse 29
20
29
3.1. Hệ thống thông tin và hệ thống tác nghiệp
29
3.2. Kiến trúc dữ liệu của data warehouse
32
3.2.1 Mô hình dữ liệu đa chiều (multidimensional data)32
32
3.2.2. Mô hình dữ liệu thực tế của data warehouse35
35
PHẦN II. XÂY DỰNG DATA WAREHOUSE CHO CHỦ ĐỀ "HỢP ĐỒNG
KHAI THÁC" CHO CÔNG TY BẢO VIỆT NHÂN THỌ
39
Chương 4. Tìm hiểu vấn đề
41
4.1. Đặc điểm của công ty Bảo Việt Nhân Thọ
41
4.2. Hệ thống dữ liệu hiện nay
45
Chương 5. Mô hình xây dựng Data Warehouse
cho chủ đề "Hợp đồng khai thác"
47
5.1. Mô hình tổng quát
47
5.2. Mô hình chi tiết
Chương 6. Triển khai mô hình và kết quả
6.1. Mô hình dữ liệu
6.1.1. Mô hình dữ liệu data source57
48
56
56
57
6.1.2. Mô hình dữ liệu data warehouse58
58
6.1.3. Mô hình dữ liệu staging area61
61
6.2. Chương trình triển khai
63
6.3. Kết quả
69
Kết luận
Tài liệu tham khảo
71
72
LỜI CẢM ƠN
Xin chân thành cảm ơn PSG-TS Nguyễn Việt Hương, cô đã hướng dẫn
em hoàn thành bản đồ án tốt nghiệp này.
Xin chân thành cảm ơn TS Nguyễn Thành Quang, trưởng phòng tin học
Tổng công ty Bảo hiểm Việt Nam đã hết sức tạo điều kiện làm việc cho em
trong quá trình thực tập tại phòng tin học Tổng công ty Bảo hiểm Việt Nam.
Xin chân thành cảm ơn anh Lê Minh, người đã giúp đỡ và hướng dẫn
em trong quá trình thực tập tại phòng tin học Tổng công ty Bảo hiểm Việt
Nam.
Xin cảm ơn các anh, chị tại phòng tin học Tổng công ty Bảo hiểm Việt
Nam đã giúp đỡ em trong quá trình thực tập.
Cuối cùng, xin cảm ơn tất cả bạn bè, những người đã có những ý kiến
đóng góp quý báu đối với em trong quá trình thực hiện bản đồ án tốt nghiệp
này.
1
PHẦN I. KHÁI NIỆM DATA WAREHOUSE
Data warehouse là một công cụ hữu hiệu giúp cho doanh nghiệp có được
cái nhìn đầy đủ và tổng quát về doanh nghiệp của mình, ngoài ra người dùng còn
có thể dùa và data warehouse để chạy các ứng dụng nhằm thu được những thông
tin rất hữu Ých cho việc phát triển công ty trong môi trường kinh doanh đầy
cạnh tranh và biến động.
Tuy nhiên, việc xây dựng data warehouse cho doanh nghiệp là một công
việc không hề đơn giản. Để có thể xây dựng data warehouse thì trước tiên chúng
ta cần phải biết được những khái niệm căn bản nhất về vấn đề này. Ba chương
đầu tiên của bản đồ án này sẽ giúp các bạn điều đó.
Chương 1. Lịch sử phát triển của data warehouse : chương này mô tả
những lợi Ých mà data warehouse mang lại cho người dùng cuối, nhờ vậy ta
có thể hiểu được điều gì đã khiến các doanh nghiệp tìm đến với công nghệ
này.
Chương này cũng sẽ điểm qua toàn bộ lịch sử phát triển của ngành công
nghệ thông tin theo hướng xuất hiện data warehouse. Phần này sẽ nhìn ngược
trở về lịch sử phát triển, như vậy ta có thể thấy được logic phát triển của
công nghệ data warehouse.
Mặc dù trong chương này chúng ta không đề cập chi tiết và đưa ra
những định nghĩa chặt chẽ về bất cứ một khái niệm mới nào, tuy nhiên chúng
ta sẽ được làm quen với hầu hết các khái niệm mới.
2
Chương 2. Những khái niệm về data warehouse : chương này sẽ trình bày
định nghĩa và kiến trúc logic của data warehouse nhằm làm cho người đọc có
được một cái nhìn tổng quan về data warehouse.
Trong phần đầu chương ta sẽ tìm hiểu các khái niệm về data warehouse.
Chóng ta sẽ thấy được phần nào sự phức tạp của data warehouse trong định
nghĩa của nó. Việc hiểu rõ định nghĩa của data warehouse sẽ giúp chúng ta
một định hướng rõ ràng hơn khi tìm hiểu về kiến trúc của hệ thống sử dụng
data warehouse.
Phần tiếp theo sẽ là kiến trúc logic của data warehouse. Phần này mô tả
cho ta thấy các thành phần trong một hệ thống sử dụng data warehouse và
các tiến trình cần có để tổ hợp dữ liệu vào data warehouse.
Chương 3. Kiến trúc dữ liệu của data warehouse : chương này mô tả kiến
trúc cụ thể của data warehouse và cho thấy sự khác biệt của nó với kiến trúc
dữ liệu thông thường (kiến trúc dữ liệu quan hệ).
Ta sẽ tìm hiểu sự khác nhau giữa hệ thống thông tin và hệ thống tác
nghiệp, từ đó chúng ta sẽ hiểu được data warehouse cung cấp thông tin cho
người dùng cuối như thế nào.
Phần tiếp theo sẽ mô tả kiến trúc dữ liệu của data warehouse, nó sẽ giúp
người đọc làm quen với 2 mô hình dữ liệu phổ biến nhất là dạng sao và dạng
bông tuyết.
3
CHƯƠNG 1
LỊCH SỬ PHÁT TRIỂN CỦA DATA WAREHOUSE
Trên thế giới có rất nhiều tổ chức hay công ty có những kho dữ liệu khổng
lồ. Trong quá trình hoạt động, do yêu cầu của công việc nên những tổ chức hay
công ty này phải lưu lại dữ liệu của khách hàng, sản phẩm, hóa đơn, ... Theo
nghiên cứu thì cứ khoảng sau 5 năm khối lượng dữ liệu của doanh nghiệp lại
tăng lên gấp đôi. Tuy nhiên việc làm thế nào để có thể khai thác được những kho
dữ liệu khổng lồ này lại là một vấn đề nan giải bởi dữ liệu thường không nhất
quán và không được thiết kế với mục đích hỗ trợ quyết định. Vì vậy cái mà các
tổ chức và công ty này cần là một công cụ cho phép họ tổng hợp dữ liệu một
cách hiệu quả.
Sù ra đời của data warehouse bắt nguồn từ sự kết hợp của hai nhân tố kinh
tế và kĩ thuật. Các công ty, đặc biệt là các công ty lớn có nhiều chi nhánh khác
nhau, rất muốn có được những thông tin tổng quan trên phạm vi toàn công ty, từ
đó có thể giúp cho lãnh đạo của công ty ra quyết định. Tuy nhiên, các hệ thống
dữ liệu tác nghiệp trước đây không thể hoàn thành được công việc này vì chúng
được thiết kế với mục đích là phục vụ công việc nghiệp vụ hàng ngày, vì vậy cần
phải có một công nghệ dữ liệu khác. Chính sự phát triển của công nghệ được sự
thúc đẩy mạnh mẽ của nhu cầu của các doanh nghiệp trong môi trường kinh
doanh đầy cạnh tranh đã tạo nên data warehouse.
Data warehouse ra đời đã mang lại một số lợi Ých nhất định cho các nhà
kinh doanh :
Cho phép các nhà kinh doanh theo dõi được sự biến động của môi
trường kinh doanh : ở một khía cạnh nào đó, data warehouse có thể
4
xem như là những "ảnh chụp" liên tiếp tình trạng kinh doanh của
công ty, vì vậy nó cho phép người dùng cuối thấy được môi trường
kinh doanh của công ty qua các thời kì.
Câu trả lời cho các câu hỏi truy vấn dữ liệu có tính thương mại. Các
nhà kinh doanh muốn rằng những câu hỏi họ đặt ra trong lĩnh vực
kinh doanh sẽ được trả lời theo dạng mà họ có thể hiểu được.
Cung cấp công cụ truy xuất dữ liệu nhằm mục đích phân tích và hỗ trợ
quyết định. Trong những hệ thống cơ sở dữ liệu tác nghiệp trước đây thì
điều này rất khó thực hiện ngay cả khi dữ liệu là đầy đủ và sẵn sàng, lÝ
do đơn giản là vì hệ thống cơ sở dữ liệu tác nghiệp được thiết kế ra với
mục đích phục vụ công việc tác nghiệp thường ngày chứ không phải
được thiết kế ra với mục đích hỗ trợ quyết định.
Thống nhất được dạng và cấu trúc dữ liệu phù hợp với yêu cầu của
người dùng cuối. Đối với các công ty có nhiều chi nhánh khác nhau thì
có thể dữ liệu được lưu trữ dưới các dạng khác nhau, ví dụ như cùng là
đơn vị đo chiều dài nhưng có nơi dùng đơn vị là cm, có nơi dùng đơn vị
là inch, ... do vậy gây khó khăn cho việc phân tích dữ liệu để hỗ trợ
quyết định.
Quản trị dễ dàng. Sau khi được xây dựng, người quản trị có thể lên kế
hoạch để hệ thống vận hành tự động. Người quản trị chỉ có nhiệm vụ
theo dõi, chỉnh sửa và nâng cấp khi có yêu cầu hoặc sự cố.
Lợi Ých của data warehouse đối với người dùng cuối và doanh nghiệp là
khá rõ ràng. Data warehouse đã được chứng minh là công nghệ mang lại hiệu
quả đầu tư cao. Một nghiên cứu của công ty Dữ liệu Quốc tế (IDC : International
Data Corporation) trên 62 data warehouse cho biết tỉ lệ hiệu quả đầu tư trung
bình cho data warehouse là 321% và kết quả thu được có thể thấy sau một vài
năm.
5
Lý thuyết hoàn chỉnh về data warehouse được ra đời vào năm 1992 với sự
xuất bản cuốn sách "Building the data warehouse" của W. H. Inmon và Inmon
được coi là cha đẻ của data warehouse. Tuy nhiên trước đó data warehouse hay
một phần của nó đã xuất hiện dưới dạng này hay dạng khác.
Giữa thập kỉ 90 của thế kỉ 20, data warehouse đã trở thành một trong những
từ thông dụng nhất được sử dụng trong công nghiệp máy tính. Tuy nhiên cần
phải nhấn mạnh rằng data warehouse không thể phát triển theo hướng của các
nhà sản xuất, trái lại nó phải được phát triển bởi các công ty nhằm thỏa mãn nhu
cầu kinh doanh của các công ty đó. Vì vậy, data warehouse không phải là một
sản phẩm hàng loạt, nó không phải được sản xuất ra một lần rồi đem bán hay áp
dụng cho nhiều đơn vị khác nhau. Data warehouse là một sản phẩm đơn chiếc,
nó được sáng tạo một lần và được phát triển liên tục theo thời gian nhằm đáp ứng
đầy đủ những nhu cầu của người sử dụng. Nó chỉ thích hợp cho một đơn vị và
phải bám sát đặc điểm kinh doanh hay sản xuất của đơn vị đó.
Phần tiếp theo sẽ mô tả từng bước phát triển của ngành công nghệ thông tin
theo chiều hướng tiến đến sự ra đời của data warehouse.
1.1. THỜI KÌ TIỀN SỬ - TRƯỚC NĂM 1980 :
Thời kì trước những năm giữa thập kỉ 70 được coi là thời kì của các máy
tính. Sự phát triển của các máy vi tính (sau này được gọi là PC) và của các phần
mềm đã giúp cho người dùng cuối có thể thao tác, điều khiển trực tiếp với dữ
liệu của họ.
Mét trong những cột mốc quan trọng của giai đoạn này là sự ra đời của
công nghệ dữ liệu quan hệ vào đầu thập kỉ 70 của Boyce/Codd. Theo sau nó là
sự ra đời của hàng loạt các sản phẩm, công cụ quản lí và giao tiếp với cơ sở dữ
liệu quan hệ. Đặc biệt sự ra đời của ngôn ngữ truy vấn dữ liệu có cấu trúc (SQL :
Structured Query Language) rất gần gũi với con người đã cho phép người dùng
cuối có thể thao tác với dữ liệu quan hệ một cách dễ dàng, vì vậy nó được chuẩn
6
hóa và sử dụng rất rộng rãi. Hiện nay tất cả các hãng sản xuất phần mềm quản trị
dữ liệu đều hỗ trợ ngôn ngữ này.
Cho tới giữa những năm 70, do sự phức tạp của phần cứng và phần mềm
máy tính ngày càng tăng, vì vậy số người dùng cuối có khả năng thao tác, điều
khiển trực tiếp dữ liệu ngày càng giảm. Lúc này, họ cần phải tìm kiếm một
chuyên gia xử lý dữ liệu (data processing expert) có thể thao tác với dữ liệu để
cung cấp cho họ những thông tin cần thiết giúp họ ra quyết định. Những chuyên
gia xử lý dữ liệu này, vì đòi hỏi của công việc, phải tập trung toàn bộ tâm trí và
sức lực vào việc nắm bắt kĩ thuật thao tác với máy tính và dữ liệu. Điều này có
nghĩa là đã có một khoảng cách khá lớn giữa người dùng cuối và kĩ thuật lấy
thông tin mà họ cần.
Khoảng giữa thập kỉ 80, khoảng cách này đã giảm đi một cách đáng kể.
Người dùng cuối vừa có khả năng kinh doanh vừa có thể tự mình khai thác dữ
liệu. Điều này được thực hiện bởi sự đơn giản hóa các kĩ thuật xử lý dữ liệu.
Thời kì này máy tính cá nhân (PC : Personal Computer) cũng phát triển mạnh mẽ
và được sử dụng rộng rãi, nhờ nó mà công nghệ thông tin đã đạt được một bước
tiến dài.
1.2. THỜI KÌ TRUNG ĐẠI - TỪ GIỮA NHỮNG NĂM 80 ĐẾN CUỐI NHỮNG
NĂM 80 :
Nếu thời kì trước đặc trưng bởi những sự đổi mới về công nghệ dẫn tới sự
ra đời của người dùng cuối thì tới thời kì này được coi là thời kì của những
người dùng cuối. Người dùng cuối càng phát triển thì nhu cầu của người dùng
cuối lại càng cao và càng phong phú. Những kiến trúc dữ liệu trước đây trở nên
không thể đáp ứng nổi với nhu cầu của người dùng cuối trong việc hỗ trợ ra
quyết định, vì vậy đã dẫn tới sự tiến triển lên một giai đoạn tiếp theo của công
nghệ dữ liệu, đó là sự ra đời của data warehouse ứng dụng cho từng công ty
riêng rẽ.
7
Khi người dùng cuối cần có những thông tin toàn cảnh về công ty thì một
trong những vấn đề khó khăn nhất là tích hợp các phần dữ liệu lại với nhau. Do
các phần dữ liệu này mang tính độc lập với nhau khá cao nên không thể tích hợp
chúng một cách dễ dàng. Vì vậy các dữ liệu cần phải được tiền xử lý trước khi
tích hợp lại.
Data warehouse lần đầu tiên được nhắc tới trong giai đoạn những năm 1984
tới 1988. Nó có sự tiến triển khác nhau trong các công ty. Các bước tiến quan
trọng của data warehouse diễn ra khi người ta hiểu được tầm quan trọng của kiến
trúc dữ liệu khi phải cung cấp dữ liệu tới người dùng cuối. Các công ty nhận ra
sù quan trọng của việc mô hình hóa dữ liệu và xây dựng giao diện với người
dùng cuối.Tuy nhiên trong thời kì này vẫn tồn tại nhiều sự hiểu sai về khái niệm
data warehouse và những những lợi Ých mà data warehouse đem lại cũng như
quy mô của các công ty nên triển khai data warehouse. Cùng với thời gian,
những sự nhầm lẫn này cũng dần dần được xóa bỏ. Cho tới cuối thời kì này,
những công ty đã thử nghiệm data warehouse nhận ra rằng data warehouse chính
là chìa khóa phát triển và mở rộng ứng dụng cho người dùng cuối, vì vậy họ tiếp
tục tìm kiếm những cách thức để triển khai data warehouse dùa trên nền tảng lý
thuyết đã có.
Cuối thời kì này cũng đánh dấu sự định nghĩa về kiến trúc data warehouse
lần đầu tiên xuất hiện rộng rãi. Một trong những bài báo đầu tiên đã mô tả về
kiến trúc của data warehouse là bài báo của Devlin và Murphy vào năm 1988.
Bài báo này trình bày các công việc được thực hiện để thiết kế data warehouse
cho công ty IBM châu Âu. Sau này IBM vẫn được coi là công ty đầu tiên đưa ra
khái niệm data warehouse.
Đặc biệt thời kì này người ta cũng đã phân biệt được rõ ràng hệ thống tác
nghiệp và hệ thống thông tin. Hệ thống tác nghiệp là hệ thống phục vụ cho công
việc kinh doanh hàng ngày, vì vậy nó cần có phản ứng gần như tức thì đối với
các yêu cầu kinh doanh, các sự kiện trong hệ thống thường có phạm vi ảnh
hưởng nhỏ. Hệ thống tác nghiệp được cấu trúc tối ưu sao cho nó có thể đạt được
8
tốc độ nhanh nhất, nó thường được sử dụng bởi những người dùng phải giao tiếp
với khách hàng, sản phẩm, ... Trong khi đó, các đặc điểm của hệ thống thông tin
lại khác hẳn : nã được sử dụng để quản lí và điều khiển công việc kinh doanh, nó
được coi là các "ảnh chụp" liên tiếp tình trạng kinh doanh của công ty, do đó nó
cho ta thấy tình trạng của công ty tại từng thời điểm hay trong một thời kì. Hệ
thống thông tin được kiến trúc tối ưu cho việc trả lời các câu hỏi chứ không phải
cho việc cập nhật dữ liệu, các yêu cầu đối với hệ thống thông tin là rất rộng và
khó đoán trước, nó được sử dụng bởi các nhà quản lý và người dùng cuối như là
một phương tiện cung cấp cho họ những thông tin cần thiết trong việc hỗ trợ ra
quyết định.
1.3. CUỘC CÁCH MẠNG DỮ LIỆU - NHỮNG NĂM ĐẦU THẬP KỈ 90 :
Đến đầu những năm 90 thì máy tính cá nhân đã trở thành công cụ không thể
thiếu được trong các doanh nghiệp. Giá rẻ và được chuẩn hóa tốt đã giúp cho
chúng chiếm lĩnh được thị trường công nghệ thông tin. Nhờ đó mà các sản phẩm
chạy trên PC cũng được phát triển mạnh mẽ. Thời kì này hệ thống dữ liệu quan
hệ chiếm lĩnh toàn bộ thị trường nhờ được chuẩn hóa cao và cấu trúc chặt chẽ.
Tuy nhiên nó cũng vấp phải một vần đề khó khăn, đó là tốc độ truy vấn không
cao khi có một câu hỏi ở mức tổng thể đòi hỏi phải duyệt qua nhiều bảng mới trả
lời được.
Nhờ những thành công bước đầu trong quá trình triển khai data warehouse
ở giai đoạn trước, những người quản lý hệ thống thông tin đã cố gắng thuyết
phục người dùng tin tưởng vào những lợi nhuận và cơ hội mà data warehouse sẽ
mang lại cho họ trong tương lai.
Sự chấp nhận data warehouse chỉ lan rộng trong cộng đồng doanh nghiệp
khi mà họ nhận ra rằng họ cần phải có một cái nhìn tổng quan hơn về doanh
nghiệp và nhiều khi điều đó là rất có giá trị. Họ nhìn thấy được khả năng tiềm
tàng trong việc khai thác những dữ liệu đã có hơn là chỉ thao tác và cập nhật dữ
9
liệu. Khi khai thác những kho dữ liệu khổng lồ, họ có thể lấy được những thông
tin đáng giá phục vụ cho việc marketing hoặc tăng sức cạnh tranh.
Cũng vào đầu thời kì này, chính những biến động to lớn về chính trị và kinh
tế khiến nhiều doanh nghiệp thấy cần phải có một sự thay đổi mạnh mẽ trong
việc kinh doanh để có thể tăng cường cạnh tranh. Ví dụ như trong ngành công
nghiệp hàng không, việc cạnh tranh giữa các doanh nghiệp ngày càng quyết liệt.
Một trong những hãng hàng không đạt được thành công là nhờ những thay đổi
đáng kể trong chiến dịch marketing. Họ đã cố gắng tìm ra sự liên hệ giữa những
khách hàng thường xuyên của hãng với dữ liệu về vé mà hãng đang có để đề ra
một chiến dịch marketing mới. Kết quả tìm kiếm cho thấy những khách hàng
thường xuyên nhất là những doanh nhân, những người thường ngồi khoang hạng
nhất, đặt vé muộn và muốn có được sự linh hoạt cao. Sự liên kết dữ liệu về
những người thường xuyên đi máy bay của hãng với dữ liệu của hệ thống bán vé
đã cho ra đời một chiến dịch marketing mới và rất có hiệu quả nhằm vào tầng líp
doanh nhân, điều này không những làm cho hãng có được một số lượng lớn
khách hàng trung thành mà còn giúp cho hãng thu hót thêm được nhiều khách
hàng mới.
Ví dụ trên cho thấy những nhu cầu kinh doanh mới đã dẫn tới cuộc cách
mạng dữ liệu. Các doanh nghiệp cần một cái nhìn mới để hiểu được công ty hoạt
động như thế nào - mét cái nhìn có thể bao quát được những khía cạnh kinh
doanh riêng lẻ trước đây, và để đáp ứng được điều này thì công nghệ dữ liệu
cũng cần phải có những thay đổi phù hợp.
Có thể nói sự phát triển về công nghệ dữ liệu trong thời kì này là sự phát
triển về nhận thức. Mặc dù tăng trưởng về số lượng là không nhiều, trong thời kì
này mô hình dữ liệu quan hệ vẫn phát triển mạnh mẽ, nhưng nhận thức về data
warehouse đã thay đổi theo hướng tiếp cận với người dùng. Nó tạo ra mét xu thế
phát triển mới là lấy người dùng làm trung tâm thay vì lấy yêu cầu của công việc
làm trung tâm như trước kia. Mục đích xây dựng hệ thống data warehouse cũng
trở nên rõ ràng, đó là hướng vào kinh doanh. Data warehouse đã được chọn lùa
10
để trở thành công cụ cung cấp thông tin kinh doanh và phục vụ công cuộc chiếm
lĩnh thị trường của các doanh nghiệp.
1.4. KỈ NGUYÊN CỦA QUẢN LÝ DÙA TRÊN THÔNG TIN - TỚI NHỮNG NĂM
CỦA THẾ KỈ 21 :
Trong suốt thập kỉ 80 đến nửa đầu thập kỉ 90, lý thuyết và việc triển khai
data warehouse được thực hiện tương đối chậm chạp vì vẫn còn tồn tại nhiều
định nghĩa khác nhau về data warehouse. Tuy nhiên những định nghĩa này cũng
có một số điểm chung về những nhu cầu trong kinh doanh cũng như những
hướng mà kĩ thuật cần phải hỗ trợ trong việc triển khai data warehouse, và mặc
dù xuất hiện vào đầu những năm 80 nhưng cho tới giê thì chúng vẫn được nhìn
nhận là những yếu tố cơ bản trong lý thuyết xây dựng data warehouse.
Mét trong những chiều hướng kinh doanh trong tương lai sẽ là quản lý dùa
vào thông tin, điều đó có nghĩa là những thông tin hỗ trợ quyết định sẽ được
chuyển tải tới người dùng cuối. Quá trình này có thể được thể hiện như sau :
Một nguồn thông tin duy nhất : dữ liệu cần tích hợp có thể tới từ rất
nhiều nguồn, cả từ trong và ngoài công ty và tồn tại dưới rất nhiều dạng,
từ loại dữ liệu có cấu trúc truyền thống tới loại dữ liệu phi cấu trúc như
văn bản hay phim ảnh. Trước khi được đưa tới người dùng cuối, chúng
cần được làm sạch và thống nhất để đảm bảo chất lượng và tính toàn
vẹn.
Phân phối thông tin : việc quản lý dùa vào thông tin không chỉ là công
việc của bộ phận đầu não của công ty mà nó còn là công việc của rất
nhiều bộ phận khác. Ví dụ một công ty có nhiều chi nhánh ở các vùng
địa lý khác nhau thì các chi nhánh này cũng cần có thông tin để quản lý.
Thông tin trong ngữ cảnh kinh doanh : người dùng chỉ có thể hiểu và sử
dụng thông tin một cách hữu Ých khi mà thông tin được đặt trong ngữ
cảnh của các hoạt động kinh doanh của người dùng. Vì vậy các định
11
nghĩa dữ liệu cung cấp bởi các chuyên gia kinh doanh trở thành các quy
chuẩn và cần phải có một bộ phận thông tin chứa các định nghĩa này.
Phân phối thông tin tự động : khi dữ liệu chuyển thành thông tin và luân
chuyển trong hoặc giữa các tổ chức với nhau thì các công cụ phân phối
tự động trở nên cần thiết. Sự tự động không chỉ đòi hỏi tiến trình phân
phối phải tự động mà còn đòi hỏi cả những định nghĩa về các yêu cầu
luân chuyển và chuyển dạng dữ liệu.
Quyền sở hữu và chất lượng thông tin : thông tin là tài sản sống còn của
các công ty, và giống như các tài sản khác, nó cần được quản lý và bảo
vệ. Chất lượng của nó phải được đảm bảo. Quyền sở hữu thông tin là
điều kiện tiên quyết để nhận ra giá trị của thông tin.
1.5. KẾT LUẬN :
Tới đây, ta có thể đưa ra một định nghĩa về data warehouse như sau : "Data
warehouse đơn giản là một kho dữ liệu đơn nhất, hoàn chỉnh, thống nhất được
tạo thành từ nhiều nguồn dữ liệu khác nhau có thể cung cấp thông tin cho người
dùng cuối theo cách mà họ có thể hiểu và sử dụng được trong ngữ cảnh kinh
doanh của họ".
Lịch sử phát triển của data warehouse nói riêng và của ngành công nghệ
thông tin nói chung gắn liền với sự phát triển của công nghệ phần cứng. Cho dù
có những lúc hướng đi của ngành bị chi phối bởi công nghệ mới và cũng có khi
lại phải chạy theo đòi hỏi của người dùng cuối nhưng bằng cách này hay cách
khác thì cái đích cuối cùng của sự phát triển vẫn là sử dụng những thành quả của
kĩ thuật để mang lại lợi Ých cho người sử dụng cho dù họ là nhà cung cấp sản
phẩm hay những người dùng cuối. Đó chính là lý do khiến data warehouse
không thể chỉ nằm trong công nghệ thông tin hay trong lĩnh vực kinh tế. Nó phải
trở thành một công nghệ đem lại lợi Ých cho cả người sử dụng cuối và người tạo
ra nó. Có như vậy data warehouse mới có thể tồn tại và phát triển.
12
Qua thời gian, theo chiều phát triển của lịch sử, công việc của các chuyên
gia công nghệ thông tin cũng dần thay đổi. Từ chỗ công việc chính của họ là tự
động hóa và giản tiện các công việc hàng ngày dần dần đã chuyển sang quản lí
và phát triển các hệ thống đó. Sự dịch chuyển này chính là tiền đề phát triển của
data warehouse.
13
CHƯƠNG 2
NHỮNG KHÁI NIỆM VỀ DATA WAREHOUSE
Ở chương trước, chúng ta đã biết được rằng những nhu cầu của người dùng
cuối kết hợp với sự phát triển của công nghệ dẫn tới sự ra đời của data
warehouse và ta cũng đã định nghĩa thế nào là data warehouse.
Chương này ta sẽ đi sâu và giới thiệu kĩ hơn về data warehouse, đồng thời
chương này cũng sẽ nêu lên kiến trúc tổng quát của một data warehouse để
chúng ta có thể hình dung rõ ràng hơn về nó.
2.1. DATA WAREHOUSE LÀ GÌ :
Data warehouse là một cơ sở dữ liệu được thiết kế để đáp ứng với nhu cầu
trả lời câu hỏi và phân tích chứ không phải để xử lý các giao dịch hàng ngày như
cơ sở dữ liệu tác nghiệp. Nó thường chứa các dữ liệu có tính lịch sử bắt nguồn từ
dữ liệu tác nghiệp, nhưng nó cũng có thể chứa dữ liệu từ các nguồn khác nữa. Nó
giúp công ty tách việc phân tích ra khỏi các giao dịch hàng ngày.
Sau đây là 4 đặc tính cơ bản của data warehouse được nêu bởi William
Inmon :
a) Hướng chủ đề :
Data warehouse được thiết kế để giúp bạn phân tích dữ liệu nhằm trả lời các
câu hỏi của người dùng cuối. Mặt khác, những câu hỏi của người dùng cuối lại
có thể phân loại được theo một số chủ đề nào đó. Ví dụ người dùng cuối có thể
đặt các câu hỏi như : "Khách hàng có độ tuổi nào mua nhiều bảo hiểm nhất trong
năm nay ?", "Công ty con nào bán được nhiều bảo hiểm nhất trong tháng này ?"
14
hay "Mặt hàng bảo hiểm nào được ưa chuộng nhất trong quý vừa rồi ?" để tìm
hiểu rõ tình trạng bán bảo hiểm của công ty. Để trả lời những câu hỏi này, một
data warehouse tập trung vào chủ đề hợp đồng bảo hiểm sẽ được xây dựng.
Tương tự như vậy, data warehouse hướng vào các chủ đề khác cũng sẽ được hình
thành.
b) Tích hợp :
Data warehouse được xây dựng từ nhiều nguồn dữ liệu khác nhau, các
nguồn dữ liệu này có sự xung đột với nhau về tên trường, giá trị thể hiện, đơn vị
đo lường, ... Ví dụ như cùng biểu diễn trường địa chỉ nhưng có cơ sở dữ liệu sử
dụng tên trường là "Địa chỉ" trong khi cơ sở dữ liệu khác lại dùng là "Nơi ở".
Ngoài ra các cơ sở dữ liệu cũng có thể có giá trị thể hiện khác nhau, ví dụ để
biểu diễn giới tính của khách hàng, công ty con này dùng giá trị là 0 và 1, trong
khi công ty con khác lại dùng giá trị là "M" và "W". Ngoài ra cũng còn phải kể
đến sự sử dụng đơn vị đo lường khác nhau cũng dẫn tới việc khó thống nhất các
cơ sở dữ liệu lại với nhau. Tóm lại, khi giải quyết được tất cả những sự xung đột
dữ liệu này để dữ liệu có thể chuyển vào data warehouse theo một định dạng duy
nhất, ta nói rằng chúng đã được tích hợp.
c) Không thay đổi :
Đặc tính này có ý nghĩa là khi dữ liệu đã được cập nhật vào data warehouse
rồi thì dữ liệu không nên thay đổi nữa. Điều này cũng logic vì mục đích của data
warehouse là cho phép bạn phân tích những gì đã xảy ra.
d) Thời biến :
Để phát hiện ra xu hướng kinh doanh, các nhà phân tích cần một khối lượng
dữ liệu cực kì lớn, điều này trái ngược hẳn với hệ thống xử lý giao dịch trực
tuyến, nơi mà tốc độ xử lý được đặt lên quan trọng hàng đầu còn thông tin lịch
15
sử thì không được coi trọng. Thời biến ở đây có ý nghĩa là data warehouse phản
ánh được sự thay đổi kinh doanh theo thời gian.
Sự mâu thuẫn cơ bản trong một hệ thống thông tin là mâu thuẫn giữa các
ứng dụng hướng dữ liệu để thực hiện công việc kinh doanh và những ứng dụng
để quản lí chúng. Môi trường hỗ trợ quyết định luôn mâu thuẫn với hệ tác nghiệp
trên nhiều mặt. Đầu tiên phải kể đến là vấn đề tốc độ. Để đạt được tốc độ cao
cho cả hai hệ thống cần phải tách biệt chúng ra. Data warehouse đã làm như vậy.
Bằng cách xây dựng data warehouse thì doanh nghiệp đã có hai hệ cơ sở dữ liệu
tách biệt nhau là hệ cơ sở dữ liệu tác nghiệp và data warehouse.
Cách thức tốt nhất để lưu trữ dữ liệu lại không phải là cách tối ưu để hiển
thị chúng. Chính vì vậy, cấu trúc của dữ liệu trong data warehouse được hướng
vào phục vụ người dùng tạo ra một phương thức dễ hình dung nhất để hiển thị
dữ liệu. Mục đích của việc xây dựng data warehouse là tạo thuận lợi tối đa khi
xem xét dữ liệu với mục đích phân tích kinh doanh và ra quyết định thay vì mục
tiêu kĩ thuật. Nói chung data warehouse được xây dựng là để phục vụ kinh doanh
và hướng vào kinh doanh.
Bởi vì data warehouse cung cấp dữ liệu để xem xét lịch sử cũng như triển
vọng phát triển nên nó tìm cách thể hiện và lưu trữ trạng thái tình hình kinh
doanh trong một khoảng thời gian dài. Điều này mang lại cho những nhà kinh
doanh lợi Ých to lớn cho phép họ phân tích xu hướng và triển vọng kinh doanh.
2.2. KIẾN TRÚC CỦA DATA WAREHOUSE :
16
2.2.1. KIẾN TRÚC CƠ BẢN :
Kiến trúc cơ bản của data warehouse rất đơn giản. Nó dùa trên ý tưởng là
xây dựng một kho dữ liệu thống nhất từ nhiều nguồn dữ liệu khác nhau để phục
vụ truy vấn.
Kiến tróc data warehouse gồm 3 líp chính :
Líp dữ liệu nguồn (Data Sources) : Dữ liệu được đưa vào data
warehouse từ rất nhiều nguồn khác nhau. Điều này thể hiện đặc tính tích
hợp của data warehouse. Trên hình vẽ ta thấy dữ liệu nguồn có thể là dữ
liệu có sẵn trong hệ thống tác nghiệp của doanh nghiệp và cũng có thể là
dữ liệu lấy từ nguồn bên ngoài doanh nghiệp. Dữ liệu có thể là loại có
cấu trúc chặt chẽ như dữ liệu quan hệ đã được chuẩn hóa hay có thể là
loại phi cấu trúc như các văn bản thông thường.
Líp Warehouse : Líp này chứa đựng dữ liệu đã được tổng hợp cùng siêu
dữ liệu mô tả chúng cũng như các tiến trình tổng hợp, phân bổ dữ liệu.
Hai thành phần quan trọng nhất của líp Warehouse là dữ liệu và siêu dữ
liệu. Chúng phải được lưu giữ và mô tả nhất quán về nội dung (ý nghĩa
dữ liệu) cũng như hình thức (khuôn dạng dữ liệu). Để tăng tốc cho việc
đáp ứng trả lời truy vấn thì dữ liệu trong data warehouse thường được để
sẵn dưới dạng tổng kết.
Líp ứng dông : có nhiệm vụ tương tác với người dùng cuối. Một trong
những đặc điểm quan trọng của data warehouse là cung cấp thông tin
cho rất nhiều người sử dụng với những yêu cầu không thể dự đoán
trước, vì vậy nhìn chung líp người dùng có cấu trúc phức tạp. Hơn nữa,
người dùng ở đây có thể sử dụng nhiều công cụ khai thác và truy xuất dữ
liệu khác nhau nên giao diện giữa líp Warehouse và người dùng cũng đa
dạng.
Do tính đa dạng của líp ứng dụng và líp người dùng nên chúng không thể
giao tiếp với data warehouse theo các giao diện chuẩn mà thường cần phải có
17
những công cụ được thiết kế đặc biệt chuyên thực hiện công việc này. Dữ liệu
khi được đưa vào hoặc đưa ra khái data warehouse đòi hỏi phải có những tiến
trình xử lý phức tạp. Các ứng dụng đảm nhiệm công việc này thường tạo ra các
kho trung gian và phải thực thi nhiều bước chuyển tiếp.
Có hai tiến trình xử lý chính gồm :
Tập hợp dữ liệu đưa vào Warehouse : ngoài việc đọc hiểu các cấu trúc
dữ liệu, tiến trình này còn phải thực hiện nhiều chức năng khác để bảo
đảm tính nhất quán của dữ liệu trong warehouse.
Phân bổ dữ liệu đến người dùng cuối : có nhiều công cụ để thực hiện
việc này, nhưng nói chung là dữ liệu thường được tiền xử lý trước rồi
sau đó mới hiển thị tới người dùng cuối.
Ta thấy kiến trúc cơ bản của data warehouse là khá đơn giản, tuy nhiên việc
xây dựng nó cũng đã khá khó khăn. Sau đây ta sẽ xem xét thêm kiến trúc của
data warehouse khi có thêm líp Data mart và bước đệm xử lý.
2.2.2. KIẾN TRÚC DATA WAREHOUSE CÓ THÊM LÍP DATA MART VÀ BƯỚC ĐỆM XỬ LÝ :
Nhìn tổng thể kiến trúc mới của data warehouse cũng gồm 3 líp chính như
kiến trúc cơ bản.
18
- Xem thêm -