You are on page 1of 35

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

----------

BÁO CÁO MÔN HỌC

KHO DỮ LIỆU VÀ KHAI PHÁ DỮ LIỆU

Đề tài : Kho dữ liệu

Giảng Viên: NGUYỄN QUỲNH CHI

Nhóm: 15

Thành viên : Vũ Văn sơn B16DCCN306

Nguyễn Hà Phương B16DCCN273

Nguyễn Tiến Quân B16DCCN282

Nguyễn Thị Đào B16DCCN057

32
Mục Lục
Lời nói đầu...............................................................................................................4
I. Giới thiệu............................................................................................................4
1. Mục tiêu..........................................................................................................4
2. Phạm vi của bài tập lớn.................................................................................5
II. Yêu cầu nghiệp vụ..........................................................................................5
III. Đặc tả chức năng............................................................................................6
IV. Thiết kế kho dữ liệu.......................................................................................6
A. Xây dựng mô hình thực thể liên kết mở rộng.............................................6
B. Thiết kế lược đồ hình sao............................................................................13
1. Lược đồ dải thiên hà.................................................................................13
2. Ngôn ngữ truy vấn khai phá dữ liệu.......................................................14
3. Phân cấp.....................................................................................................14
4. Các thao tác xử lý phân tích trực tuyến..................................................15
V. Báo cáo phân tích trực tuyến.........................................................................18

32
Lời nói đầu
Chúng ta đang sống trong thời đại nền kinh tế tri thức. Hoạt động muốn hiệu
quả phải có phương pháp để có được thông tin chính xác và nhanh chóng.

Trong một doanh nghiệp, người quản lý sẽ luôn phải đặt các câu hỏi và họ
muốn biết về tình hình kinh doanh, tốc độ tăng trưởng, lượng giao dịch hàng ngày,
hàng tháng, so sánh giữa các tháng hoặc phân khúc khách hàng của doanh nghiệp.

Đối với doanh nghiệp, họ sẽ có một hệ thống quản lý giao dịch hay các ứng
dụng, hệ thống vận hành hàng ngày và chúng có khả năng cho phép lấy dữ liệu cho
báo cáo đơn giản. Tuy nhiên đối với những yêu cầu báo cáo nhiều chiều đòi hỏi
phải tính toán phức tạp thì hệ thống này rất khó thực hiện.

Trong khi đó các doanh nghiệp lớn có nhiều hệ thống vận hành song song
cùng nhau. Vì thế để thực hiện báo cáo, họ phải tổng hợp dữ liệu từ nhiều hệ thống
sau đó tổng hợp lại.

Từ vấn đề trên, họ bắt buộc phải xây dựng một hệ thống là một cơ sở dữ liệu
mới dành cho việc truy vấn và báo cáo ở phạm vi toàn doanh nghiệp. Hay còn gọi
là kho dữ liệu là nơi tổng hợp tất cả dữ liệu từ các hệ thống con sau đó tính toán
xuất ra các bảng mà dữ liệu của bảng đã được tính toán theo mục đích nào đó.

Kho dữ liệu là kho lưu trữ điện tử của một lượng lớn thông tin của doanh
nghiệp và giúp họ có thể trích rút nguồn tài nguyên chính xác và nhanh chóng. Góp
phần thúc đẩy kết quả kinh doanh.

32
I. Giới thiệu

1. Mục tiêu
Mục tiêu của bài toán là thiết lập hệ thống kho dữ liệu cho doanh nghiệp để
xử lý đặt hàng của khách hàng với các tiêu chí:

 Hỗ trợ nhân viên thực hiện tốt công việc của mình, như có những
quyết định hợp lý, nhanh và bán được nhiều hàng hơn, năng suất
cao hơn, thu được lợi nhuận cao hơn .
 Tích hợp các dữ liệu từ nhiều hệ thống nguồn, cho phép một chế
độ xem trung tâm trên toàn doanh nghiệp
 Bảo mật thông tin và trình bày thông tin một cách nhất quán vì dữ
liệu đến từ nhiều nguồn khác nhau
 Hỗ trợ ra quyết định dựa vào thông tin góp phần đem lại kết quả
kinh doanh tốt
 Tốc độ truy cập phải nhanh
 Kiểm soát được tình hình, số lượng các mặt hàng, cửa hàng và
khách hàng.
 Đá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 yêu cầu
đó không thể đáp ứng thì công ty sẽ chuyển yêu cầu tới các thành
phố khi đến khi mặt hàng có đủ để cung cấp.
 Giúp cho tổ chức điều hành các dự án, các nghiệp vụ hiệu quả

2. Phạm vi của bài toán

Quản lý việc kinh doanh của một doanh nghiệp gồm nhiều cửa hàng nằm
rải rác ở nhiều thành phố và bang khác nhau để đáp ứng được nhu cầu
của khách hàng.

II. Yêu cầu nghiệp vụ

32
1. Tìm tất cả các cửa hàng cùng với thành phố, bang, 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
đó.
2. 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 đó.
3. 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 đó.
4. Tìm địa chỉ văn phòng đại diện với tên thành phố, bang 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ể.
5. 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 đó.
6. Tìm thành phố và bang mà một khách hàng nào đó sinh sống.
7. 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 đó.
8. 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.
9. 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.

III. Đặc tả chức năng

 Công cụ sử dụng cho bài tập lớn là MS SQL Server và MS VISUAL


STUDIO
 Đặc tả đầu vào đầu ra:
 Đầu vào :
 Cơ sở dữ liệu văn phòng đại diện gồm: các thông tin của khách
hàng.
 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 đặt hàng, mặt hàng được lưu trong kho và
mặt hàng được đặt.
 Các phương thức quản lý tại công ty, cửa hàng và văn phòng đại
diện

32
 Đầu ra:
 Các bảng dữ liệu động cung cấp các xử lý trực tuyến với các thao
tác cuộn lên, khoan 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

IV. Thiết kế kho dữ liệu


A. Xây dựng mô hình thực thể liên kết mở rộng.
Lược đồ quan hệ của hệ thống cơ sở dữ liệu quan hệ hiện tại của doanh
nghiệp này như sau:
 Cơ sở dữ liệu Văn phòng đại diện bao gồm những quan hệ với các lược đồ
như sau:

Khách hàng (Mã KH, Tên KH, Mã Thành phố, Ngày đặt hàng đầu tiên)

Khách hàng du lịch (*Mã KH, Hướng dẫn viên du lịch, Thời gian)

Khách hàng bưu điện (* Mã KH, Địa chỉ bưu điện, Thời gian)

 Cơ sở dữ liệu Bán hàng gồm những quan hệ với lược đồ như sau:

Văn phòng đại diện (Mã Thành phố, Tên Thành phố, Địa chỉ VP, Bang, Thời
gian)

Cửa hàng (Mã cửa hàng, * Mã Thành phố, Số điện thoại, Thời gian)

Mặt hàng (Mã MH, Mô tả, Kích cỡ, Trọng lượng, Giá, Thời gian)

Mặt hàng_được lưu trữ (* Mã cửa hàng, * Mã mặt hàng, Số lượng trong kho,
Thời gian)

Đơn đặt hàng (Mã đơn, Ngày đặt hàng, Mã Khách hàng)

Mặt hàng được đặt (* Mã đơn, * Mã mặt hàng, Số lượng đặt, Giá đặt, Thời
gian)

32
 Trong đó những thuộc tính được gạch chân là khóa chính và thuộc tính đánh
dấu (*) là khóa ngoại.

Bước 1: Xác định kiểu quan hệ, khóa và các trường

Relation Reltype Primary Key FKA


Khách hàng PR1 Mã KH
Khách hàng du lịch PR2 Mã KH
Khách hàng bưu điện PR2 Mã KH
Văn phòng đại diện PR1 Mã Thành phố
Cửa hàng PR1 Mã cửa hàng Mã Thành phố
Mặt hàng PR1 Mã MH
Mã cửa hàng
Mặt hàng_được lưu trữ SR1
Mã mặt hàng
Đơn đặt hàng PR1 Mã đơn
Mã đơn
Mặt hàng được đặt SR1
Mã mặt hàng

Bước 2: Ánh xạ PR1 thành thực thể

32
Bước 3: Ánh xạ PR2 sang thực thể lớp con hoặc thực thể yếu

32
Bước 4: Ánh xạ SR1 thành quan hệ hai ngôi hoặc nhiều ngôi

Bước 5: Ánh xạ SR2 thành quan hệ hai ngôi hoặc nhiều ngôi

32
Bước 6: Ánh xạ mỗi FKA thành một quan hệ

Bước 7: Ánh xạ phụ thuộc bao hàm sang ngữ nghĩa

Các phụ thuộc bao hàm phái sinh Ngữ nghĩa suy ra
DonDatHang.MaKHKhachHang.MaKH Quan hệ nhiều-một
giữa thực thể Đơn đặt
hàng và Khách hàng
MatHangDuocLT.MaMHMatHang.MaMH Quan hệ nhiều-nhiều
MatHangDuocLT.MaCuaHangCuaHang.MaCuaHang giữa thực thể Mặt hàng
với Cửa hàng
MatHangDuocDat.MaMHMatHang.MaMH Quan hệ nhiều-nhiều
MatHangDuocDat.MaDonDonDatHang.MaDon giữa thực thể Mặt hàng
với Đơn hàng.
KhachHang.MaThanhPhoVanPhongĐD.MaThanhPho Quan hệ nhiều-một
giữa thực thể Khách
hàng với Văn phòng đại
diện.
CuaHang.MaThanhPho VanPhongĐD.MaThanhPho Quan hệ nhiều-một
giữa thực thể Cửa hàng
với Văn phòng đại diện.
Bước 8: Từ kết quả của 7 bước trên ta thu được mô hình EER

32
B. Thiết kế lược đồ hình sao
1. Lược đồ dải thiên hà

32
2. Ngôn ngữ truy vấn khai phá dữ liệu.

Hàm nguyên thủy định nghĩa sơ đồ dải thiên hà :

define cube Sale1 [CuaHang, VPĐD, MatHang]: SoLuong = count(*)

define dimension MatHang as (Ma_MH, MoTa, KichCo, TrongLuong, Gia)

define dimension CuaHang as (Ma_CH, Ma_TP, SĐT)

define dimension VPĐD as (Ma_TP, Ten, Bang,DiaChiVP)

define cube Sale2 [DonBanHang, KhachHang, MatHang,CuaHang]:

SoLuongDat= count(*), TongTien=sum(Gia)

define dimension MatHang as MatHang in cube Sale1

32
define dimension CuaHang as CuaHang in cube Sale1

define dimension DonBanHang as (Ma_Don,Ma_KH,NgayDatHang)

define dimension KhachHang as( Ma_KH,TenKH,Ma_TP)

3. Phân cấp

Chiều dữ liệu VPĐD có một phân cấp là Bang -> Thành Phố -> VPĐD .
Ý nghĩa của phân cấp này nói rằng một Bang thì có nhiều Thành Phố, và mỗi
Thành Phố sẽ có một VP đại diện. Vì thế nếu biết được số cửa hàng thuộc mỗi
văn phòng đại diện thì sẽ tổng hợp được số cửa hàng của từng thành phố và của
từng Bang .

Bang

Thành Phố

Văn phòng đại diện

4. Các thao tác xử lý phân tích trực tuyến

Mô hình mạng truy vấn :

32
1. Tìm tất cả các cửa hàng cùng với thành phố, bang, 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 đó.
 Câu truy vấn này lấy dữ liệu theo 3 chiều: Cửa hàng, VPĐD, và Mặt hàng. Ở
chiều Mặt hàng là Mặt hàng lưu trữ. Ở chiều VPĐD là Thành phố, Bang. Ở
chiều Cửa hàng là Cửa hàng chi tiết .
2. 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 đó
 Câu truy vấn này lấy dữ liệu theo 2 chiều là : Đơn đặt hàng và Khách hàng.
Ở chiều Đơn đặt hàng là Đơn đặt hàng chi tiết . Ở chiều Khách hàng là
Khách hàng chi tiết .

32
3. 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 đó.
 Câu truy vấn này lấy dữ liệu theo 4 chiều là : Cửa hàng , VPĐD, Khách
hàng,Mặt hàng.Ở chiều Cửa hàng là Cửa hàng chi tiết.Ở chiều VPĐD là
Thành phố . Ở chiều Khách hàng là Khách hàng chi tiết . Ở chiều Mặt hàng
là Mặt hàng được đặt.
4. Tìm địa chỉ văn phòng đại diện với tên thành phố, bang 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ể.
 Câu truy vấn này lấy dữ liệu theo 3 chiều : VPĐD, Cửa hàng ,Mặt hàng . Ở
chiều VPĐD là Thành phố, Bang. Ở Cửa hàng là Cửa hàng chi tiết. Ở Mặt
hàng là Mặt hàng lưu trữ.
5. 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 đó.
 Câu truy vấn này lấy dữ liệu theo 4 chiều :Đơn đặt hàng , VPĐD, Cửa hàng ,
Mặt hàng. Ở VPĐD là Thành phố . Ở chiều Cửa hàng là Cửa hàng chi tiết.
Ở Mặt hàng là Mặt hàng được đặt. Ở chiều Đơn đặt hàng là Đơn đặt hàng
chi tiết.
6. Tìm thành phố và bang mà một khách hàng nào đó sinh sống.
 Câu truy vấn này lấy dữ liệu theo 2 chiều : VPĐD và Khách hàng .Ở chiều
VPĐD là Bang và Thành phố . Ở chiều Khách hàng là Khách hàng chi tiết .
7. 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 đó.
 Câu truy vẫn này lấy dữ liệu theo 3 chiều : VPĐD, Cửa hàng , Mặt hàng . Ở
chiều VPĐD là Thành phố. Ở chiều Cửa hàng là Cửa hàng chi tiết. Ở chiều
Mặt hàng là Mặt hàng lưu trữ.

32
8. 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.
 Câu truy vấn này lấy dữ liệu theo 5 chiều : Mặt hàng,Khách hàng , Cửa
hàng, VPĐD, Đơn đặt hàng .
Ở chiều Mặt hàng là Mặt hàng được đặt. Ở chiều Khách hàng là Khách
hàng chi tiết. Ở Cửa hàng là Cửa hàng chi tiết. Ở VPĐD là Thành phố. Ở
Đơn đặt hàng là Đơn đặt hàng chi tiết .
9. 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.
 Câu truy vấn này lấy dữ liệu theo 1 chiều : Khách hàng. Chiều Khách hàng
là : Khách hàng DL, Khách hàng BĐ.
V. Báo cáo phân tích trực tuyến
Bước 1: Thao tác với SQL Server Management Studio
 Khởi đông SQL Server Management Studio và tạo mới một Databases
có tên DWW như sau và nhập vào các bảng như đã thiết kế.
 Một số records để phân tích.

32
 Tạo Database DWW

32
 Tạo Database Diagrams

 Thêm dữ liệu vào các bảng trong Databases DWW.

32
32
Bước 2: Thao tác với Microsoft visual studio.

 Tạo 1 project mới có dang là : Analysis Services Multidimensional and


Data Mining Project có tên là DW

32
 Tạo một Data Source mới, có tên là DWW, để liên kết với kho dữ liệu
DWW đã tạọ trong SQL Server Management Studio.

32
32
32
 DESKTOP-LHGLDN5 là server name, DWW là tên của Database đã tạo
trong SQL Server Management Studio.

32
 Ta đã có một Data sources, tiếp theo cần tạo thêm một Data Source View để
lấy các bảng dữ liệu cần thiêt cần cho phân tích. Bấm phím phải chuột vào
Data Source View trong của sổ Solution Explorer chọn New Data Source
View

32
32
 Chọn Data Sources là DWW đã tạo bên trên.

 Chọn các bảng dữ lệu cần thiết cho phân tích.

32
- Đăt tên cho Data Source View và bấm Finish để hoàn thành.

 Sau đó chúng ta cần tạo mới một Cube để tạo dữ liệu khối cho phân tích.

32
- Bấm chuột phải lên Cube trong Solution Explorer và chọn New Cube

32
- Chọn Data source view là DWW và hệ thống sẽ tự động dò tìm face và
Dimension Tables. Khối dữ liệu các chiều được sinh ra:

32
 Cuối cùng ta bấm chuột phải vào Project -> deploy.

32
 Thông báo Deployment completed Successfully.

Bước 3: thực hiện truy vấn, phân tích trực tuyến.

Ta có thể phân tích theo nhiều cách.

Cách 1: Thực hiện kéo thả trên giao diện của Olap.

- Chọn các bảng và thuộc tính cần phân tích, kéo sang bên cửa sổ bên phải.
- Ở đây ta có chọn đó là Ma Khach Hang, Bang, Ma Thanh Pho, Ten Thanh
Pho, và số lượng Khach Hang Count.
- Để làm rõ hơn ta chọn những khách hàng có Ma Khach Hang là 4, và Bang
là Bang New Mexico.

32
Như vậy ta thấy, sẽ tìm được những khách hàng nào sống ở Bang và Thanh Pho
nao.

VD2: Tất cả các khách hàng và cửa hàng của 1 đơn đặt hàng.

32
Cách 2: Sử dụng câu lệnh truy vấn MDX để thực phiện phân tích.

- Vd:

SELECT NON EMPTY { [Measures].[Khach Hang Count] } ON


COLUMNS,

NON EMPTY { ([Khach Hang].[Ma Khach Hang].[All] * [Van Phong Dai


Dien].[Bang].[All] * [Van Phong Dai Dien].[Ten Thanh Pho].[All]) } ON
COLUMNS

FROM [DWW]

WHERE{ [Khach Hang].[Ma Khach Hang].&[4] }

Thực hiện câu truy vấn da được.

32
- Câu truy vấn nghĩa là tìm tất cả các khách hàng có Mã bằng 1 sống ở bang
nào, và tên thành phố.

Cách 3: Thực hiện liên kết với excel:

Tương tự như thực hiện phân tích như bên Giao diện Olap, ta cũng chọn các thuộc
tính cần phân tích.

Vd: Tìm số lượng khác hàng có Ma Thanh Pho là 12, Ma Loai Khach Hang là 1,
Loai Khach Hang là Postal customers.

32

You might also like