Tải bản đầy đủ (.docx) (37 trang)

BÁO cáo bài tập lớn môn học KHO dữ LIỆU và KHAI PHÁ dữ LIỆU CHỦ đề DATA WAREHOUSE

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.46 MB, 37 trang )

HỌC VIỆN CƠNG NGHỆ BƯU CHÍNH VIỄN THƠNG

BÁO CÁO BÀI TẬP LỚN
MÔN HỌC: KHO DỮ LIỆU VÀ KHAI PHÁ DỮ LIỆU
CHỦ ĐỀ: DATA WAREHOUSE
NHÓM LỚP: NHÓM 2
Giảng Viên Hướng Dẫn: Nguyễn Quỳnh Chi
NHÓM 7
Sinh viên thực hiện:
Trần Hữu Anh

B17DCCN050

Phạm Huỳnh Đức

B17DCCN146

Chu Sơn Giang

B17DCCN182

Hoàng Quốc Trung

B17DCCN626

Bùi Quang Tuấn

B17DCCN648

Hà Nội - 2021



Mục lục
Phân công công việc:..........................................................................................2
CHƯƠNG 1: Giới thiệu - Mục tiêu phạm vi bài tập lớn...................................2
1.1 Giới thiệu về kho dữ liệu........................................................................2
1.2 Mục tiêu bài tập lớn:...............................................................................4
1.3 Phạm vi..................................................................................................4
CHƯƠNG 2: Yêu cầu nhiệm vụ.......................................................................5
CHƯƠNG 3: Đặc điểm đầu vào của kho dữ liệu..............................................6
3.1 Đặc tả đầu vào:.......................................................................................6
3.2 Đầu ra:....................................................................................................6
CHƯƠNG 4: Thiết kế kho dữ liệu....................................................................6
4.1 Chuyển đổi từ lược đồ quan hệ sang mơ hình thực thể liên kết để mơ tả
về mặt ngữ nghĩa.......................................................................................................6
4.2 Tổng qt hóa.......................................................................................10
4.3 Lược đồ ER..........................................................................................10
4.4 Chuyển đổi cơ sở dữ liệu qua hệ quản trị SQL Server..........................11
4.5 Lược đồ hình sao..................................................................................12
CHƯƠNG 5: Cài đặt các khối dữ liệu............................................................13
5.1 Dữ liệu nguồn.......................................................................................13
5.2 Tạo các bảng dữ liệu và đổ dữ liệu từ cơ sở dữ liệu nguồn vào kho.....17
CHƯƠNG 6: Phần VI:Báo cáo phân tích trực tuyến OLAP...........................19
6.1 Các bước thực hiện...............................................................................19
CHƯƠNG 7: KIỂM TRA TÍNH ĐÚNG ĐẮN CỦA DỮ LIỆU.....................30
CHƯƠNG 8: KẾT LUẬN..............................................................................34

1


PHÂN CÔNG CÔNG VIỆC:

Trần Hữu Anh: Chỉnh sửa, bổ sung nội dung báo cáo, thiết kế kho dữ liệu,
làm slide, demo
Phạm Huỳnh Đức: Làm nội dung báo cáo chương 5,6
Chu Sơn Giang: Làm nội dung báo cáo chương 7,8
Hoàng Quốc Trung: Làm nội dung báo cáo chương 3,4
Bùi Quang Tuấn: Làm nội dung báo cáo chương 1,2
CHƯƠNG 1: GIỚI THIỆU - MỤC TIÊU PHẠM VI BÀI TẬP
LỚN
1.1 Giới thiệu về kho dữ liệu
Kho dữ liệu (data warehouse) là kho lưu trữ điện tử của một lượng lớn
thông tin của một doanh nghiệp hoặc tổ chức. Kho dữ liệu là một thành phần
quan trọng của phân tích kinh doanh, sử dụng các kĩ thuật phân tích trên dữ liệu
doanh nghiệp. Khái niệm kho dữ liệu được giới thiệu vào năm 1988 bởi 2 nhà
nghiên cứu của IBM là Barry Devlin và Paul Murphy.
Định nghĩa về kho dữ liệu này 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. 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). Kho dữ liệu được sử
dụng để cung cấp cái nhìn sâu sắc hơn về hiệu suất của một công ty bằng cách
so sánh dữ liệu được hợp nhất từ nhiều nguồn không đồng nhất. Kho dữ liệu
được thiết kế để chạy các câu hỏi và phân tích trên dữ liệu lịch sử có nguồn gốc
từ các nguồn giao dịch.
Kho dữ liệu không nhất thiết phải là khái niệm giống như cơ sở dữ liệu
tiêu chuẩn. Cơ sở dữ liệu là một hệ thống giao dịch được thiết lập để giám sát và
cập nhật dữ liệu thời gian thực để chỉ có dữ liệu gần đây nhất dùng được. Kho
dữ liệu được lập trình để tổng hợp dữ liệu có cấu trúc trong một khoảng thời
gian.
Kho dữ liệu hoạt động như thế nào?

Khi dữ liệu đã được nạp vào kho, nó khơng thay đổi và không thể sửa
đổi do kho dữ liệu vận hành các phân tích về sự kiện đã xảy ra bằng cách tập
trung vào các thay đổi trong dữ liệu theo thời gian. Dữ liệu được lưu trữ phải
2


được lưu trữ theo cách an toàn, đáng tin cập, dễ truy xuất và quản lí. Các bước
để tạo một kho dữ liệu gồm có:
Bước 1: Dữ liệu được tập hợp từ nhiều nguồn và đưa vào Data Sources
để đồng bộ định dạng, biên soạn, sau đó sẽ q trình làm sạch dữ liệu, tìm kiếm
để sửa hay loại bỏ bất kỳ lỗi nào trong dữ liệu nhằm đảm bảo tính nhất quán của
dữ liệu trước khi đưa vào Warehouse.
Bước 2: Dữ liệu sau khi trải qua nhiều thao tác ở tầng Data Sources sẽ
được chuyển từ định dạng cơ sở dữ liệu sang định dạng kho. Sau đó tại tầng
Warehouse, dữ liệu sẽ được sắp xếp, hợp nhất và tổng kết,… nhằm đảm bảo quá
trình phân phối và xử lý dữ liệu diễn ra trơn tru và mượt mà hơn. Theo thời gian,
khi càng có nhiều dữ liệu từ nhiều nguồn được cập nhật, kho dữ liệu sẽ càng tiếp
nhận và xử lý chúng
Bước 3: Dữ liệu được phân bổ đến người dùng cuối khi có thao tác tìm
kiếm, truy vấn và xuất báo cáo. Trong bước này, có nhiều công cụ để thực hiện
nhằm giúp dữ liệu được xử lý gọn gàng và dễ nhìn trước khi hiển thị tới người
dùng cuối. Một kho dữ liệu tốt không chỉ giúp cho q trình phân tích, xuất báo
cáo dễ dàng nhanh chóng mà cịn giúp các bộ phận khác nhau trong công ty truy
cập dữ liệu của nhau dễ dàng hơn.
Các doanh nghiệp có thể lưu trữ dữ liệu để sử dụng trong thăm dò và
khai thác dữ liệu, tìm kiếm các mẫu thơng tin sẽ giúp họ cải thiện quy trình kinh
doanh của mình. Một hệ thống lưu trữ dữ liệu tốt cũng có thể giúp các bộ phận
khác nhau trong công ty truy cập dữ liệu của nhau dễ dàng hơn.
OLAP là kỹ thuật sử dụng các cube (khối – thể hiện của dữ liệu đa
chiều) nhằm cung cấp khả năng truy xuất nhanh đến dữ liệu của data warehouse.

Tạo khối (cube) cho dữ liệu trong các bảng chiều (dimension table) và bảng sự
kiện (fact table), và cung cấp khả năng thực hiện các truy vấn phức tạp và phân
tích cho các ứng dụng client. Data WareHouse và Data Mart lưu trữ dữ liệu cho
phân tích, OLAP là kỹ thuật cho phép các ứng dụng client truy xuất hiệu quả dữ
liệu này.
OLAP cung cấp nhiều lợi ích cho người phân tích:
 Cung cấp mơ hình dữ liệu đa chiều, trực quan cho phép dễ dàng lựa chọn,
định hướng và khám phá dữ liệu.
 Cung cấp một ngôn ngữ truy vấn phân tích có sức mạnh để khám phá các
mối quan hệ trong dữ liệu kinh doanh phức tạp.
 Dữ liệu được tính tốn trước đối với các truy vấn thường xuyên nhằm làm
thời gian trả kết quả của các truy vấn đặc biệt trở nên nhanh chóng hơn.
3


 Cung cấp các công cụ mạnh mẽ giúp người dùng tạo các khung nhìn mới
của dữ liệu dựa trên một tập các hàm tính tốn đặc biệt có sẵn.
 Công nghệ quản lý bảo mật, quản lý truy vấn client/server và bộ nhớ đệm
dữ liệu, và các phương tiện để tối ưu hóa hiệu suất của hệ thống dựa trên những
nhu cầu của người dùng.
OLAP được đặt ra để xử lý các truy vấn liên quan đến lượng dữ liệu rất
lớn, mà nếu cho thực thi các truy vấn này trong hệ thống OLTP sẽ không thể cho
kết quả hoặc sẽ mất rất nhiều thời gian.
OLAP gồm: MOLAP - Mutidimensional OLAP, ROLAP - Relational
OLAP, HOLAP - Hybrid OLAP
1.2 Mục tiêu bài tập lớn:
 Tích hợp dữ liệu trong tồn bộ doanh nghiệp.
 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
 Lưu trữ thông tin các đơn hàng mà khách hàng đã đặt.

 Lưu trữ thông tin khách hàng.
 Tạo mơ hình dữ liệu nhiều chiều .
 Trích lọc các dữ liệu tác nghiệp được lưu trữ.
 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.
1.3 Phạm vi
Hệ thống kho dữ liệu được xây dựng cho một doanh nghiệp bao gồm
nhiều cửa hàng nằm rải rác ở nhiều thành phố và bang khác nhau. Mỗi cửa hàng
có một số lượng các mặt hàng với số lượng hàng khác nhau. Doanh nghiệp cũng
lưu trữ thông tin về các khách hàng bao gồm hai loại: loại thứ nhất là khách du
lịch thường được dẫn đến bởi các hướng dẫn viên các đoàn du lịch, loại hai bao
gồm những khách hàng đặt hàng qua đường bưu điện. Thành phố sinh sống của
các khách hàng, cùng với dữ liệu về đơn đặt hàng đầu tiên của khách hàng được
lưu lại trong hệ thống hiện tại. Mỗi khách hàng chỉ sống ở một thành phố và
doanh nghiệp đó sẽ cố gắng đáp ứng các mặt hàng trong đơn hàng của khách
bằng cách lấy từ kho ở thành phố mà khách hàng đó sinh sống. Mỗi đơn đặt
hàng của khách có thể đặt thoải mái về số lượng và số các mặt hàng và mỗi đơn
đặt hàng được xác định bởi một mã số đơn đặt hàng.
4


Vị trí của các cửa hàng cũng được lưu trữ. Mỗi cửa hàng nằm tại một
thành phố và có nhiều cửa hàng trong một thành phố. Mỗi thành phố có một văn
phòng đại diện để quản lý tất cả các cửa hàng của thành phố đó. Mục tiêu của
doanh nghiệp này là đáp ứng đầy đủ các yêu cầu của khách hàng từ những cửa
hàng nằm trong thành phố mà khách hàng sinh sống. Nếu những u cầu đó
khơng thể đáp ứng thì cơng ty sẽ chuyển u cầu tới các thành phố đến khi mặt
hàng có đủ để cung cấp.
Một số thông tin xử lý là rất quan trọng đối với doanh nghiệp này. Ví dụ,
tổng số lượng mỗi mặt hàng được lưu trữ tại mỗi thành phố. Sau mỗi lần một

mặt hàng được phân phối (được bán), doanh nghiệp này cần biết tổng số lượng
mỗi mặt hàng còn lại tại tất cả các cửa hàng trong một thành phố.
Hệ thống sẽ sử dụng MS SQL Server để xây dụng kho dữ liệu cho doanh
nghiệp.

CHƯƠNG 2: YÊU CẦU NHIỆM VỤ
 Để đáp ứng được nhu cầu của khách hàng, hệ thống kho dữ liệu trích lọc
dữ liệu từ hai cơ sở dữ liệu hiện có để cho vào kho dữ liệu và cung cấp các xử lý
phân tích trực tuyến với các thao tác cuộn lên, kéo xuống, chọn và chiếu dựa
trên những yêu cầu chọn lựa của khách hàng và các bảng theo chiều để đáp ứng
yêu cầu của người sử dụng. Thiết lập một chiều thời gian, hệ thống sẽ sinh một
báo cáo Phân tích trực tuyến cho những yêu cầu sau:
 Tìm tất cả các cửa hàng cùng với thành phố (quận, huyện, xã, thị trấn,…),
số điện thoại, mơ tả, kích cỡ, trọng lượng và đơn giá của tất cả các mặt hàng
được bán ở kho đó.
 Tìm tất cả các đơn đặt hàng với tên khách hàng và ngày đặt hàng được
thực hiện bởi khách hàng đó.
 Tìm tất cả các cửa hàng cùng với tên thành phố và số điện thoại mà có
bán các mặt hàng được đặt bởi một khách hàng nào đó.
 Tìm địa chỉ văn phịng đại diện với tên thành phố (quận, huyện, xã, thị
trấn,…) của tất cả các cửa hàng lưu kho một mặt hàng nào đó với số lượng trên
mức cụ thể.
 Với mỗi một đơn đặt hàng của khách, liệt kê các mặt hàng được đặt cùng
với mô tả, mã cửa hàng, tên thành phố và các cửa hàng có bán mặt hàng đó.
 Tìm thành phố và quận, huyện, xã, thị trấn mà một khách hàng nào đó
sinh sống.
5


 Tìm mức độ tồn kho của một mặt hàng cụ thể tại tất cả các cửa hàng ở

một thành phố cụ thể nào đó.
 Tìm các mặt hàng, số lượng đặt, khách hàng, cửa hàng và thành phố của
một đơn đặt hàng.
 Tìm các khách hàng du lịch, khách hàng đặt theo đường bưu điện và
khách hàng thuộc cả hai loại

CHƯƠNG 3: ĐẶC ĐIỂM ĐẦU VÀO CỦA KHO DỮ LIỆU
3.1 Đặc tả đầu vào:
 Cơ sở dữ liệu văn phịng đại diện gồm thơng tin của khách
hàng gồm
o Khách hàng
o Khách hàng du lịch
o Khách hàng bưu điện
 Cơ sở dữ liệu bán hàng gồm các thông tin của văn phòng
đại diện, cửa hàng, mặt hàng, đơn hàng, mặt hàng được
lưu trữ trong kho và mặt hàng được đặt
 Phương thức quản lý tại các cửa hàng, văn phòng đại diện,
doanh nghiệp
3.2 Đầu ra:
 Đầu ra của kho dữ liệu là các bảng dữ liệu động để hỗ trợ
cho người sử dụng ra quyết định thực hiện các phép chiếu
chọn, các thao tác cơ bản như cuộn lên, khoan xuống...
 Kho dữ liệu được chuyển hóa, phân ra thành những mục
tiêu như khách hàng, bán hàng, sản phẩm... nhờ công cụ
OLAP( Online Analyze Proccessing) để hỗ trợ việc truy vấn.
 Bản báo cáo thống kê theo khách hàng, cửa hàng, khách
du lịch...

6



CHƯƠNG 4: THIẾT KẾ KHO DỮ LIỆU
4.1 Chuyển đổi từ lược đồ quan hệ sang mơ hình thực
thể liên kết để mô tả về mặt ngữ nghĩa
A. Cơ sở văn phòng đại diện
- KhachHang (MaKH, TenKH, MaTP, NgayDHDT)
- KhachHangDL (* MaKH, HuongDanVien, ThoiGian).
- KhachHangBD (* MaKH, DiaChiBD, ThoiGian).
B. Cơ sở dữ liệu bán hàng
- VPDD (MaTP, TenTP, DiaChiVP, Bang, ThoiGian).
- CuaHang (MaCH, * MaTP, SDT, ThoiGian).
- MatHang (MaMH, MoTa, KichCo, TrongLuong, Gia,
ThoiGian).
- MatHangLT (* MaCH, * MaMH, ThoiGian).
- MatHangDD (* MaDon, * MaMH, SLDat, GiaDat,
ThoiGian).
- DonHang (MaDon, NgayDH, MaKH).
B1. Xác định kiểu quan hệ, khoá và các trường:
Tên bảng Kiểu
Khách
hàng
Khách
hàng du
lịch
Khách
hàng
bưu điện
Văn
phịng
đại diện

Cửa
hàng

PR1

Khố
chính
Mã KH

PR2

Mã KH

Mã KH

PR2

Mã KH

Mã KH

PR1


thành
phố
Mã cửa Mã cửa
hàng
hàng


Mặt
hàng

PR1

PR1

KAP

Mã MH

7

KAG

FKA


thành
phố


Mặt
SR1
hàng
được lưu
trữ
Đơn đặt PR1
Mặt
hàng

được đặt

SR1

Mã cửa Mã cửa
hàng
hàng
Mã MH
Mã MH
Mã đơn
đặt
Mã đơn
Mã đơn
Mã MH
Mã MH

B2. Ánh xạ PR1 thành thực thể
KhachHang
- MaKH
- TenKH
- MaTP
MatHang
- NgayDHDT
- MaMH
- MoTa
- KichThuo
c
- Gia
- TrongLuo
ng

- ThoiGian

VanPhongDaiD
ien
- MaTP
- TenTP
- DiaChiVP
- ĐonHang
ThoiGian
- MaDH
- MaDH
- MaKH
- ThoiGian

CuaHang
- MaCuaHan
g
- MaTP
- SDT
- ThoiGian

B3.Ánh xạ PR2 sang một thực thể lớp con hoặc một
thực thể yếu

8


B4. Ánh xạ SR1 sang quan hệ 2 ngôi hoặc nhiều ngôi

B5. Ánh xạ SR2 sang quan hệ nhiều ngôi

B6. Ánh xạ FKA sang một quan hệ

9


B7. Ánh xạ ý nghĩa phụ thuộc bao hàm sang ngữ
nghĩa
B8. Vẽ lược đồ ER
 Giải quyết xung đột về tên các trường
 Khách hàng (mã KH, tên KH, mã thành phố sống, ngày
đặt hàng đầu tiên)
 KH du lịch (*mã KH, HDV du lịch, thời gian tạo KHDL)
 KH bưu điện (*mã KH, địa chỉ bưu điện, thời gian tạo
KHBĐ)
 Văn phòng đại diện (mã thành phố, tên thành phố, địa
chỉ văn phòng, bang, thời gian tạo VP)
 Cử hàng (mã cửa hàng, *mã thành phố, SĐT, thời gian
tạo của hàng)
 Mặt hàng (mã MH, mơ tả, kích cỡ, trọng lượng, giá,
thời gian tạo MH)
 Mặt hàng được lưu trữ (*mã MH, *mã cửa hàng, số
lượng trong kho, thời gian tạo lưu trữ)
 Đơn đặt hàng (mã đơn, ngày đặt, mã KH đặt)
 Mặt hàng được đặt (*mã đơn, *mã MH, số lượng đặt,
giá đặt, thời gian đặt)

10


4.2 Tổng quát hóa


4.3 Lược đồ ER

11


4.4 Chuyển đổi cơ sở dữ liệu qua hệ quản trị SQL Server

12


4.5 Lược đồ hình sao

13


CHƯƠNG 5: CÀI ĐẶT CÁC KHỐI DỮ LIỆU
5.1 Dữ liệu nguồn
Sử dụng tool có sẵn sinh dữ liệu giả
VPDD: 100 bản ghi

CuaHang: 300 bản ghi

14


MatHang: 100 bản ghi

MatHangLT: 2997 bản ghi


15


KhachHang: 4000 bản ghi

KhachHangBD: 2100 bản ghi

16


KhachHangDL: 2100 bản ghi

DonHang: 5000 bản ghi

17


MatHangDD: 10019 bản ghi

5.2 Tạo các bảng dữ liệu và đổ dữ liệu từ cơ sở dữ liệu
nguồn vào kho.
-Tạo các bảng VPDD, KhachHang, CuaHang, DonHang,
MatHang giống với cơ sở dữ liệu nguồn và đổ dữ liệu vào
- Tạo bảng ThoiGian
CREATE TABLE dim_time_order(dateOrder DATE PRIMARY
KEY NOT NULL,monthOrder INT NOT NULL,quarterOrder INT NOT
NULL,
yearOrder INT NOT NULL)
BEGIN
DECLARE @mindate datetime

DECLARE @maxdate datetime
SELECT @mindate = Min(thoigian) from dim_dondathang
SELECT @maxdate = Max(thoigian) from dim_dondathang
WHILE(@mindate <= @maxdate)
BEGIN
18


INSERT INTO dim_time_order VALUES(@mindate,
MONTH(@mindate),
DATEPART(QUARTER,@mindate),YEAR(@mindate))
set @mindate=@mindate+1;
End
End

-Đổ dữ liệu vào bảng Fact
INSERT INTO Fact
SELECT d.MaDon as MaDon,k.MaKH as MaKH,c.MaCH as
MaCH,m.MaMH as MaMH,t.MaTP as MaTP,m.quantity AS
quantityOrder
,m.price
AS
orderValue,m.price/m.quantity
priceEach,d.thoigian as orderdate

AS

FROM
dbo.dim_dondathang
d,dbo.dim_khachhang

k,dbo.dim_mathangduocdat m, dbo.dim_mathangluutru c,
dbo.dim_cuahang t
WHERE d.MaKH=k.MaKH AND m.MaDon=d.MaDon AND
c.MaMH=m.MaMH AND t.MaCH=c.MaCH

19


CHƯƠNG 6: PHẦN VI:BÁO CÁO PHÂN TÍCH TRỰC TUYẾN
OLAP
6.1 Các bước thực hiện
-Mở Microsoft visual studio -> Chọn Create new project
-> Analysis Services Multidimensional and Data Mining
Project

- Data Sources  New Data Source và chọn dữ liệu kết nối

20


Chọn Inherit

Đặt tên cho data source và chọn finish

21


Ở phần Data Source Views chọn New Data Scource Views,
chọn datacource( vừa tạo) và bấm next


Thêm các bảng vào như hình

22


-Tiếp theo chọn New Cubes, chọn Use existing tables và
bấm next

-Chọn như hình và bấm tiếp tục

23


Bấn next->finish ta thu được lược đồ hình sao:
24


×