ÁP DỤNG KỸ THUẬT OLAP VÀ KHO DỮ LIỆU TRONG DỰ BÁO TÀI CHÍNH - Pdf 10

2 ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ

Vũ Ngọc Anh

ÁP DỤNG KỸ THUẬT OLAP VÀ KHO DỮ LIỆU
TRONG DỰ BÁO TÀI CHÍNH KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY

Ngành: Các hệ thống thông tin
HÀ NỘI - 2010 3 ĐẠI HỌC QUỐC GIA HÀ NỘI

4

Lời cảm ơn
Trước tiên tôi xin gửi lời cảm ơn và lòng biết ơn sâu sắc tới TS.Nguyễn Hà Nam và
Ths.Nguyễn Thu Trang đã tận tình chỉ bảo và hướng dẫn tôi trong suốt quá trình thực hiện
khóa luận tốt nghiệp.
Tôi xin chân thành cảm ơn các thầy, các cô đã tạo cho tôi những điều kiện thuận lợi để
học tập và nghiên cứu tại trường Đại Học Công Nghệ.
Tôi xin cảm ơn các bạn trong nhóm làm “Data Warehouse và OLAP” đã cùng thả o luận
và trao đổi và giúp tôi rất nhiều trong quá trình thu thập tài liệu.
Tôi xin gửi lời cảm ơn vô hạn tới gia đình, bạn bè, những người thân yêu đã luôn bên
cạnh động viên tôi trong suốt quá trình thực hiện khóa luận.
Tôi xin chân thành cảm ơn!
Sinh viên
Vũ Ngọc Anh
1

Mục lục
Mục lục 1
Danh sách các hình 3
Bảng từ viết tắt 5
Lời mở đầu 6
Chương 1. Giới thiệu kho dữ liệu và dữ liệu tài chính 7
1.1. Dữ liệu trong lĩnh vực tài chính 7
1.2. Kho dữ liệu (Data warehouse) 8
1.2.1. Kho dữ liệu 8
1.2.2. Mục đích của kho dữ liệu 9
1.2.3. Lợi ích của kho dữ liệu 9
1.2.4. Thành phần của kho dữ liệu 10
1.2.5. Cấu trúc của kho dữ liệu 11
3

Danh sách các hình
Hình 1. Các thành phần của kho dữ liệu 11
Hình 2. Mô hình sao 13
Hình 3. Mô hình bông tuyết 14
Hình 4. Mô hình chòm sao 15
Hình 5. Mô phỏng các chiều trong kinh doanh 17
Hình 6. Mô hình dữ liệu MOLAP 22
Hình 7. Mô hình dữ liệu ROLAP 23
Hình 8. Mô hình dữ liệu HOLAP 24
Hình 9. Cấu trúc Pentaho 26
Hình 10. Dữ liệu tỷ giá 33
Hình 11. Dữ liệu giá vàng 34
Hình 12. Dữ liệu giá dầu 35
Hình 13. Dữ liệu chỉ số VnIndex 35
Hình 14. Dữ liệu tổng hợp 36
Hình 15. Mô hình kho dữ liệu 37
Hình 16. Spoon workspace 37
Hình 17. Spoon nhập dữ liệu 38
Hình 18. Combination Lookup/Update 38
Hình 19. Thay đổi thuộc tính 39
Hình 20. Kết nối cơ sở dữ liệu 39
Hình 21. Tạo bảng Dim_time 40
Hình 22. Tạo bảng dim_factor 40

MOLAP Multidimensional Online Analysis Processing
ROLAP Relational Online Analysis Processing
HOLAP Hybird Online Analysis Processing
BI Business Intelligence
OLTP OnLine Transaction Processing
6

Lời mở đầu
Cùng với việc áp dụng rộng rãi công nghệ thông tin vào trong hầu hết các lĩnh vực
trong đời sống, kinh tế, xã hội đó là việc dữ liệu thu nhận được qua thời gian ngày
càng nhiều.Vì vậy, yêu cầu thiết yếu đặt ra đối với các doanh nghiệp đó là việc khai
thác các dữ liệu này một các hiệu quả để phục vụ cho việc kinh doanh ngày càng tốt
hơn.
Khóa luận này với đề tài “Áp dụng kỹ thuật OLAP và kho dữ liệu trong báo cáo tài
chính” giới thiệu về kho dữ liệu, phương pháp OLAP và ứng dụng trong phân tích biên
động giá dầu, giá vàng và chỉ số VNIndex bằng công cụ Pentaho.
Khóa luận gồm bốn chương:
Chương 1. Giới thiệu kho dữ liệu và dữ liệu tài chính giới thiệu về đặc điểm của dữ
liệu tài chính, giới thiệu tổng quan về kho dữ liệu, cấu trúc kho dữ liệu, các thành
phần của kho dữ liêu, cách thiết kế kho dữ liệu và ứng dụng của kho dữ liệu.
Chương 2. Giới thiệu tổng quan về OLAP giới thiệu tổng quan về kỹ thuật OLAP, các
mô hình lưu trữ hỗ trợ kỹ thuật OLAP, ưu điểm và nhược điểm của các mô hình. Các
bước để chuyển dữ liệu từ OLTP sang OLAP.
Chương 3. Giới thiệu bộ công cụ Pentaho giới thiệu tổng quan bộ công cụ Pentaho,
kiến trúc, công nghệ, và các tiện ích của Pentaho.
Chương 4. Giới thiệu bài toán triển khai trên Pentaho và kết quả đạt được triển khai
Pentaho trên một bài toán thực, áp dụng kỹ thuật kho dữ liệu và kỹ thuật OLAP để
thực hiện
Phần kết luận tổng kết và tóm lược những kết quả, đóng góp chính của khóa luận.
7

chi tiết được hệ thống OLTP trả lời 1 cách nhanh chóng.Nhưng đối với các nhà quả lý
cấp cáo trong doanh nghiệp, họ không yêu cầu những dữ liệu quá chi tiết như vậy. Họ
yêu cầu muốn biết những thông tin mang tính hoạch định và lãnh đạo ví dụ như: mặt
hàng này đang bán chạy ở khu vực này liệu có bán chạy ở khu vực khác không? Nếu
trả lời các câu hỏi này ở hệ thống OLTP thì sẽ rất khó và hiệu quả thấp vì dữ liệu của
OLTP quá chi tiết, lưu trữ phân tán…Để giải quyết vấn đề này, hệ thống data
warehouse (kho dữ liệu) ra đời cùng với các kỹ thuật OLAP, Data mining (khai phá dữ
liệu) để có thể giúp được người quản trị cấp cao trả lời các câu hỏi mà họ yêu cầu.
1.2. Kho dữ liệu (Data warehouse)
1.2.1. Kho dữ liệu
Data warehouse - kho dữ liệu là 1 tập hợp thông tin cơ bản trên máy vi tính mà
chúng có tính quyết định đến việc thực hiện thành công bước đầu trong công việc kinh
doanh[1].
Một kho dữ liệu, gọi một cách chính xác hơn là kho thông tin (information
warehouse), là một cơ sở dữ liệu hướng đối tượng được thiết kế với việc tiếp cận các ý
kiến trong mọi lĩnh vực kinh doanh. Nó cung cấp các công cụ để đáp ứng thông tin cần
thiết cho các nhà quản trị kinh doanh tại mọi cấp độ tổ chức - không những chỉ là
những yêu cầu dữ liệu phức hợp, mà còn là điều kiện thuận tiện nhất để đạt được việc
lấy thông tin nhanh, chính xác. Một kho dữ liệu được thiết kế để người sử dụng có thể
nhận ra thông tin mà họ muốn có và truy cập đến bằng những công cụ đơn giản[9].
Một kho dữ liệu là một sự pha trộn của nhiều công nghệ, bao gồm các cơ sở dữ
liệu đa chiều và mối quan hệ giữa chúng, kiến trúc chủ khách, giao diện người dùng đồ
họa và nhiều nữa. Dữ liệu trong kho dữ liệu không giống dữ liệu của hệ điều hành là
loại chỉ có thể đọc nhưng không chỉnh sửa được. Hệ điều hành tạo ra, chỉnh sửa và xóa
những dữ liệu sản xuất mà những dữ liệu này cung cấp cho kho dữ liệu. Nguyên nhân
chính cho sự phát triển một kho dữ liệu là hoạt động tích hợp dữ liệu từ nhiền nguồn
khác nhau vào một kho dữ liệu đơn lẻ và dày đặc mà kho này cung cấp cho việc phân
tích và ra quyết định trong công việc kinh doanh.
Đối với một số công việc kinh doanh thông tin là nguồn tài nguyên có giá trị rất
lớn thì một kho dữ liệu tương đối giống như một nhà kho chứa hàng. Hệ điều hành tạo

Có kho dữ liệu cũng trích rút tài nguyên khan hiếm của hệ thống sản xuất khi thực thi
một chương trình quá lâu hoặc các báo cáo và các câu truy vấn phức hợp.
Công việc kinh doanh trở nên thông minh hơn. Tăng thêm chất lượng và tính
linh hoạt của việc phân tích kinh doanh do phát sinh từ cấu trúc dữ liệu đa tầng của
kho dữ liệu, đó là nơi cung cấp dữ liệu được sắp xếp từ mức độ chi tiết của công việc
kinh doanh cho đến mức độ cao hơn - mức độ tổng quát. Đảm bảo được dữ liệu chính
xác và đáng tin cậy do đảm bảo được là trong kho dữ liệu chỉ chứa duy nhất dữ liệu có
chất lượng cao và ổn định (trusted data).
Dịch vụ khách hàng được nâng cao. Một doanh nghiệp có thể giữ gìn mối quan
hệ với khách hàng tốt hơn do có mối tương quan với dữ liệu của tất cả khách hàng qua
một kho dữ liệu riêng.
Tái sáng tạo những tiến trình kinh doanh. Sự cho phép phân tích không ngừng
thông tin kinh doanh thường cung cấp sự hiểu biết mọi mặt của phương thức kinh
doanh do đó có thể làm nảy sinh ra những ý kiến cho sự sáng tạo ra những tiến trình
này lại. Chỉ khi xác định chính xác các nhu cầu từ kho dữ liệu thì mới giúp ta đánh giá
được những hạn chế và mục tiêu kinh doanh một cách chính xác hơn.
Tái sáng tạo hệ thống thông tin. Một kho dữ liệu là nền tảng cho các yêu cầu dữ
liệu trong mọi lĩnh vực kinh doanh, nó cung cấp một chi phí ảnh hưởng nghĩa là đưa ra
thói quen cho cho cả hai sự chuẩn hóa dữ liệu và sự chuẩn hóa hoạt động của hệ điều
hành theo chuẩn quốc tế.
1.2.4. Thành phần của kho dữ liệu
Chi tiết hiện hành
Trung tâm của kho dữ liệu là chi tiết hiện hành của nó. Đó là nơi mà phần lớn
dữ liệu được lưu trữ. Chi tiết hiện hành đến trực tiếp từ hệ điều hành và có thể được
lưu trữ như là dữ liệu thô hoặc như sự tập hợp của dữ liệu thô.
11
Chi tiết hiện hành là phần lõi dữ liệu mức thấp nhất trong kho dữ liệu. Mọi thực

Kho dữ liệu mức logic
Cũng chứa đựng metadata bao gồm những luật kinh doanh và xử lý logic cho
việc lọc, tổ chức, đóng gói và xử lý dữ liệu, nhưng không chứa đựng dữ liệu thật sự.
Thay vào đó nó chứa đựng những thông tin cần thiết để truy cập dữ liệu bất cứ nơi
đâu.
Kho dữ liệu thông minh hay dữ liệu theo chủ đề (Data mart)
Là tập con của một kho dữ liệu diện rộng. Điển hình là nó cung cấp những
thành phần lớn (phân khu, vùng, chức năng,…). Nói tóm lại, Data mart như là những
phần chuyên biệt hóa của kho dữ liệu.
1.2.6. Mô hình thực thể trong kho dữ liệu
Mô hình thực thể mối quan hệ được sử dụng phổ biến trong mô hình cơ sở dữ
liệu OLTP. Tuy nhiên, mô hình cơ sở dữ liệu ER này không thích hợp cho việc thiết
kế kho dữ liệu vì phải truy vấn tới quá nhiều bảng khác nhau. Hầu hết các kho dữ liệu
sử dụng mô hình sao (star schema). Mô hình này chỉ gồm duy nhất một bảng sự kiện
và một bảng chiều (dimention) cho mỗi chiều. Trong bảng sự kiện sẽ có các trường
khóa ngoài liên kết với khóa chính của các bảng chiều. Ví dụ về mô hình sao:
13
Mô hình sao không hỗ trợ tốt cho các bảng chứa các thuộc tính phân cấp. Mô
hình bông tuyết (SnowFlake Schema) đưa ra giải pháp cho mô hình sao khi bảng có
thuộc tính phân cấp.
OrderNo
OrderDate
CustomerNo
CustomerName
CustomerAddress
City
OrderNo

Custormers

Salespersons

Date

Fact Table

Products

City

Hình 2. Mô hình sao
14 Điều này giúp cho vệc bảo trì các bảng chiều tốt hơn. Tuy nhiên cấu trúc mặc định
trong sơ đồ sao của các bảng chiều có thể thích hợp hơn khi duyệt các chiều.
Sơ đồ chòm sao (fact constellation) là một ví dụ cho cấu trúc phức tạp khi có
nhiều hơn 1 bảng sự kiện. Mỗi sơ đồ sao có thể xây dựng thành sơ đồ chòm sao (ví dụ
bằng cách chia tách các lược đồ sao gốc thành các lược đồ sao mà mỗi chúng được mô
tả trên các cấp khác nhau của các chiều phân cấp). Các kiến trúc sơ đồ chòm sao bao
gồm nhiều bảng sự kiện và được chia sẻ cho nhiều bảng chiều.
OrderNo

OrderDate
Month

Year
OrderNo

CategoryName

CategoryDescr
CityName

State
Orders
Customers
Fact table
Month
Year

Products
Category
Salesperson
Date
City
State

Hình 3. Mô hình bông tuyết
15 Hình 4. Mô hình chòm sao
1.2.7. Các lĩnh vực ứng dụng của kho dữ liệu
Các lĩnh vực hiện tại có ứng dụng data warehouse bao gồm:
- Thương mại điện tử.
- Kế hoạch hóa nguồn lực doanh nghiệp.
- Quản lý quan hệ khách hàng.
- Chăm sóc sức khỏe.

đánh giá hiệu quả thực hiện của chúng tôi qua thời gian”.
Những người thiết kế kho dữ liệu thường lắng nghe cẩn thận những từ đó và họ
thêm vào những nhấn mạnh đặc biệt của họ như:
“Chúng tôi kinh doanh các sản phẩm trong nhiều thị trường khác nhau, và chúng tôi
đánh giá hiệu quả thực hiện của chúng tôi qua thời gian”.
17

Suy nghĩ một cách trực giác, việc kinh doanh như một khối (cube) dữ liệu, với các
nhãn trên mỗi cạnh của khối (xem hình bên dưới). Các điểm bên trong khối là các giao
điểm của các cạnh. Với mô tả kinh doanh ở trên, các cạnh của khối là Sản phẩm, Thị
trường, và Thời gian. Hầu hết mọi người đều có thể nhanh chóng hiểu và tưởng tượng
rằng các điểm bên trong khối là các độ đo hiệu quả kinh doanh mà được kết hợp giữa
các giá trị Sản phẩm, Thị trường và Thời gian [5].
Thò tröôøng
Thôøi gian
Saûn phaåm

Hình 5. Mô phỏng các chiều trong kinh doanh

Một khối dữ liệu (datacube) thì không nhất thiết phải có cấu trúc 3 chiều (3-D),
nhưng về cơ bản là có thể có N chiều (N-D). Những cạnh của khối được gọi là các
chiều (dimensions), mà đó là các mặt hoặc các thực thể ứng với những khía cạnh mà
tổ chức muốn ghi nhận. Mỗi chiều có thể kết hợp với một bảng chiều (dimension
table) nhằm mô tả cho chiều đó. Ví dụ, một bảng chiều của Sản phẩm có thể chứa
những thuộc tính như Ma_sanpham, Mo_ta, Ten_sanpham, Loai_SP,… mà có thể
được chỉ ra bởi nhà quản trị hoặc các nhà phân tích dữ liệu. Với những chiều không
được phân loại, như là Thời gian, hệ thống kho dữ liệu sẽ có thể tự động phát sinh
tương ứng với bảng chiều (dimension table) dựa trên loại dữ liệu. Cần nói thêm rằng,
chiều Thời gian trên thực tế có ý nghĩa đặc biệt đối với việc hỗ trợ quyết định cho các
khuynh hướng phân tích. Thường thì nó được mong muốn có một vài tri thức gắn liền

một trong những thao tác chính yếu để tăng tốc độ xử lý truy vấn.
2.3. Kiến trúc khối (Cube) của OLAP
Đối tượng chính của OLAP là khối (cube), một thể hiện đa chiều của dữ liệu chi
tiết và tổng hợp. Một khối bao gồm một nguồn dữ liệu (Data source), các chiều
(Dimensions), các độ đo (Measures) và các phần dành riêng (Partitions). Các khối
được thiết kế dựa trên yêu cầu phân tích của người dùng. Một kho dữ liệu có thể hỗ trợ
nhiều khối khác nhau như khối Bán hàng, khối Bảng kiểm kê…
Dữ liệu nguồn của một khối chỉ ra nơi chứa kho dữ liệu cung cấp dữ liệu cho khối.
Các chiều (dimension) được ánh xạ từ các thông tin của các bảng chiều (dimension
table) trong kho dữ liệu vào các mức phân cấp, ví dụ như chiều Địa lý thì gồm các
mức như Lục địa, Quốc gia, Tỉnh-Thành phố. Các chiều có thể được tạo một cách độc
lập và có thể chia sẻ giữa các khối nhằm xây dựng các khối dễ dàng và để chắc chắn
rằng thông tin tổng hợp cho phân tích luôn ổn định. Ví dụ, nếu một chiều chia sẻ một
19

phân cấp sản phẩm và được sử dụng trong tất cả các khối thì cấu tạo của thông tin tổng
hợp về sản phẩm sẽ ổn định giữa các khối sử dụng chiều đó.
Một chiều ảo (virtual dimension) là một dạng đặc biệt của chiều mà ánh xạ các
thuộc tính từ các thành viên (member) của một chiều khác để sau đó có thể được sử
dụng trong các khối. Ví dụ, một chiều ảo của thuộc tính kích thước sản phẩm cho phép
một khối (cube) tổng hợp dữ liệu như số lượng sản phẩm bán được theo kích thước,
hoặc như số lượng áo bán được theo kiểu và theo kích thước. Các chiều ảo (virtual
dimension) và các thuộc tính thành viên được đánh giá là cần thiết cho các truy vấn và
chúng không đòi hỏi phải có các khối lưu trữ vật lý.
Các độ đo (measure) xác định các giá trị số từ bảng sự kiện (fact table) mà được
tổng hợp cho phân tích như giá bán, chi phí hoặc số lượng bán.
Các phần dành riêng (partition) là các vật chứa lưu trữ đa chiều, giữ dữ liệu của
khối. Mỗi khối chứa ít nhất một partition, và dữ liệu của khối có thể kết hợp từ nhiều
partition. Mỗi partition có thể lấy dữ liệu một nguồn dữ liệu khác nhau và có thể lưu
trong một vị trí riêng biệt (separate). Dữ liệu của một partition có thể được cập nhật

tác nghiệp và được thu thập qua một thời gian dài. Kết quả là kích thước kho dữ liệu
có khuynh hướng từ vài trăm gigabyte đến hàng terabyte so với các cơ sở dữ liệu tác
nghiệp. Kho dữ liệu hỗ trợ các truy vấn phức tạp với thời gian hồi đáp nhanh, các truy
vấn phức tạp có thể truy xuất hàng triệu mẩu tin và thực hiện nhiều lần các thao tác
quét, kết và tổng hợp. Đối với kho dữ liệu, số lượng truy vấn đưa vào và thời gian hồi
đáp quan trọng hơn số lượng giao dịch đưa vào. Mà OLAP là một trong những công
cụ cho phép thực hiện hiệu quả các truy vấn này.
Căn cứ vào đó, các cơ sở dữ liệu tác nghiệp được xây dựng để hỗ trợ tốt các tác vụ
OLTP, vì thế nếu cố gắng thực thi các truy vấn OLAP phức tạp đối với các cơ sở dữ
liệu tác nghiệp sẽ cho kết quả là hiệu quả thực hiện không thể chấp nhận được.
2.5. Các thành phần của OLAP
Những thành phần mà OLAP sử dụng để thực hiện các dịch vụ bao gồm:
- Nguồn dữ liệu: Các cơ sở dữ liệu OLTP và các nguồn dữ liệu hợp lệ khác chứa
các dữ liệu có thể chuyển đổi thành dữ liệu OLAP trong kho lưu trữ.
- Kho trung gian: là nơi lưu trữ và xử lý dữ liệu được tập hợp, sau đó được sắp
xếp, sàng lọc, chuyển đổi thành dữ liệu OLAP hữu ích.
- Máy chủ lưu trữ: Các máy tính chạy cơ sở dữ liệu liên kết chứa các kho dữ liệu
cho kho lưu trữ, và các máy chủ quản lý dữ liệu OLAP (warehouse server).
- Ứng dụng thông minh: Các bộ công cụ và ứng dụng thực hiện truy vấn dữ liệu
OLAP và cung cấp các báo cáo và thông tin cho người ra quyết định của doanh
nghiệp (Business Intelligence).
- Siêu dữ liệu: Các đối tượng như các bảng biểu trong cơ sở dữ liệu OLTP, các
khối trong kho lưu trữ dữ liệu, và các bản ghi mà ứng dụng tham chiếu tới các đoạn
dữ liệu khác nhau.
21

2.6. Chuyển đổi dữ liệu từ OLTP tới OLAP
Để chuyển đổi dữ liệu OLTP sang dữ liệu OLAP trong kho dữ liệu được thực hiện
thông qua các qui trình sau:
- Hợp nhất dữ liệu: tất cả các dữ liệu liên quan tới các mục đặc trưng (sản phẩm,

22

cao. OLAP trình bày dữ liệu thông qua mô hình dữ liệu tự nhiên và trực quan, giúp
cho người sử dụng xem và hiểu một cách tốt nhất những thông tin trong kho lưu
trữ. Từ đó cho phép người sử dụng nhận biết được giá trị của dữ liệu.
2.7. Các mô hình lưu trữ hỗ trợ OLAP
Dịch vụ OLAP hỗ trợ nhiều mô hình lưu trữ dữ liệu khác nhau, mỗi mô hình có các
ưu và khuyết điểm riêng, chúng được sử dụng tuỳ theo mục đích khai thác.
2.7.1. Mô hình Multidimentional OLAP (MOLAP)
Mô hình OLAP đa chiều (MOLAP) lưu trữ dữ liệu cơ sở (là dữ liệu từ các bảng
của kho dữ liệu hoặc data mart) và thông tin tổng hợp (là các độ đo được tính toán từ
các bảng) trong các cấu trúc đa chiều gọi là các khối (cube). Các cấu trúc này được lưu
bên ngoài cơ sở dữ liệu data mart hoặc kho dữ liệu. Lưu trữ các khối (cube) trong cấu trúc MOLAP là tốt nhất cho các truy vấn tổng hợp
dữ liệu thường xuyên mà cần thời gian hồi đáp nhanh. Ví dụ, tổng sản phẩm bán được
của tất cả các vùng theo quý.
Ưu điểm của mô hình MOLAP:
- Thực thi nhanh: khối trong MOLAP thu hồi dữ liệu nhanh và tối ưu hóa
hoạt động[15].
- Có thể thực hiện các phép toán phức tạp: mọi tính toán được tạo ra trước
khi khối tạo ra [15].
Mysql
MOLAP
data
Oracle
Other
Dữ liệu trong môi
trường OLAP


Nhờ tải bản gốc

Tài liệu, ebook tham khảo khác

Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status