1
H
Ọ
C
VI
Ệ
N
CÔNG
NGH
Ệ
BƯU
CHÍNH
VIỄ
N
THÔNG
NGUY
Ễ
N
ANH
NGUYÊN
ĐỀ TÀI:
NGHIÊN
C
Ứ
U
QUY
TRÌNH
ETL
TRONG
KHO
D
Ữ
LI
Ệ
U
Ứ
NG
D
Ụ
NG
VÀO
H
Ệ
TH
Ố
NG
D
Ữ
LI
Ệ
U
KINH
DOANH
TRONG
DOANH
NGHI
Ệ
P
VI
Ễ
N
THÔNG
Chuyên
ngành:
Khoa
h
ọ
c
máy
tính
Mã
s
ố
:
60.48.01
TÓM
T
Ắ
T
LU
ẬN
VĂN
THẠC
SĨ
HÀ NỘI -2012
2
Lu
ận văn đượ
c
hoàn
thành
t
ạ
i:
HỌC
VIỆN
CÔNG
NGHỆ
BƯU
CHÍNH
VIỄN
THÔNG
Người hướng dẫn khoa học:
TS PHẠM THẾ QUẾ
Phản biện
1:………………………………………………………………………….
………………………………………………………………………….
………………………………………………………………………….
Phản biện 2:…………………………………………………………………………
…………………………………………………………………………
…………………………………………………………………………
Luận văn sẽ được bảo vệ trước Hội đồng chấm luận văn thạc sĩ tại Học viện Côngnghệ
Bưu chính Viễn thông
Vào
lúc:
giờ ngày tháng năm
Có thể tìm hiểu luận văn tại:
-
Thư việ
n
c
ủ
a
H
ọ
c
vi
ệ
n
Công
ngh
ệ Bưu chính Viễ
n
thông
3
M
Ở
ĐẦ
U
1.
Lý
do
ch
ọn
đề
tài
Ngành
công
nghi
ệ
p
vi
ễ
n
thông
sau
nh
ững năm phát triển đang lưu trữ
m
ộ
t
kh
ối lượ
ng
d
ữ
li
ệ
u
kh
ổ
ng
l
ồ
,
bao
g
ồ
m
các
d
ữ
li
ệu như thông tin về
khách
hàng,
chi
ti
ế
t
cu
ộ
c
g
ọ
i,
các
d
ị
ch
v
ụ
thuê
bao,
thông
tin
c
ả
nh
b
ả
o
tình
tr
ạ
ng
h
ệ
th
ố
ng
m
ạ
ng
vi
ễ
n
thông,
d
ữ
li
ệ
u
v
ề
h
ệ
th
ố
ng
cáp
vi
ễn thông v.v Lượ
ng
d
ữ
li
ệ
u
kh
ổ
ng
l
ồ
này
n
ếu đượ
c
khai thác đúng cách sẽ
là
m
ộ
t
l
ợ
i
th
ế
cho
các
doanh
nghi
ệ
p
vi
ễ
n
thông
trong
vi
ệ
c
tung
ra
các
d
ị
ch
v
ụ chăm sóc khách hàng
hay
các
ứ
ng
d
ụ
ng
mang
tính
th
ự
c
ti
ễn cao,
đồng nghĩa vớ
i
vi
ệc tăng cơ hộ
i
c
ạnh tranh đố
i
v
ớ
i
các
doanh
nghi
ệ
p
khác.
T
ừ đó yêu cầu đặ
t
ra
vi
ệ
c
xây
d
ự
ng
kho
d
ữ
li
ệ
u
t
ừ
nh
ữ
ng
ngu
ồ
n
d
ữ
li
ệ
u
trên
ph
ụ
c
v
ụ
cho
vi
ệ
c
phân
tích
kinh
doanh
t
ại các đơn vị
vi
ễ
n
thông.
Tuy
nhiên
vi
ệ
c
xây
d
ự
ng
m
ộ
t
h
ệ
th
ố
ng
nh
ư
th
ế
v
ấ
p
ph
ả
i
m
ộ
t
s
ố
h
ạ
n
ch
ế
v
ề
m
ặ
t
k
ỹ
thu
ậ
t,
đặ
c
bi
ệ
t
là
khi
kích
th
ướ
c
cũn
g
nh
ư
độ
ph
ứ
c
t
ạ
p
c
ủ
a
môi
tr
ườ
ng
thông
tin
tă
ng
lên.
L
ư
u
tr
ữ
phân
tán
ở
nhi
ề
u
d
ạ
ng
không
t
ươ
ng
thích
v
ớ
i
nhau,
th
ậ
m
chí
còn
ở
nh
ữ
ng
d
ạ
ng
phi
c
ấ
u
trúc.
Nhi
ề
u
h
ệ
CSDL
đ
ã
đượ
c
xây
d
ự
ng
không
t
ươ
ng
thích
v
ớ
i
nhau
và
không
t
ươ
ng
thích
v
ớ
i
nh
ữ
ng
h
ệ
thông
tin
m
ớ
i
đượ
c
xây
d
ự
ng.
Nhi
ề
u
khách
hàng
không
tho
ả
mãn
v
ớ
i
nh
ữ
ng
h
ệ
th
ố
ng
thông
tin
hi
ệ
n
th
ờ
i.
Kho
d
ữ
li
ệu thườ
ng
bao
g
ồ
m
các
thành
ph
ầ
n
khác
nhau,
m
ỗ
i
thành
ph
ầ
n
có
thi
ế
t
k
ế
,
kĩ thuậ
t
và
công
c
ụ riêng [6]. Trong đó hệ
th
ố
ng
ETL
là
m
ộ
t
thành
ph
ầ
n
chính
ch
ị
u
trách
nhi
ệ
m
cho
quá
trình
ETL
(
Extract,
Transform,
Load)
trong
kho
kho
d
ữ
li
ệ
u;
cho
phép
trích
rút
các
d
ữ
li
ệ
u
t
ừ
nhi
ề
u
ngu
ồ
n
khác
nhau,
làm
s
ạ
ch,
tùy
ch
ỉ
nh
và
chuy
ển đổ
i,
và
cu
ố
i
cùng
t
ả
i
vào
kho
d
ữ
li
ệ
u[1].
Vi
ệ
c
xây
d
ự
ng
ETL
chi
ếm đế
n
80%
phát
tri
ể
n
d
ự
án
và
55%
th
ờ
i
gian
c
ủ
a
kho
d
ữ
li
ệ
u
[4].
Vì
v
ậ
y
vi
ệc đánh giá đúng vai trò củ
a
quá
trình
ETL
t
ừ đó có thể
th
ể
mô
hình
hóa,
thi
ế
t
k
ế
và
t
ối ưu ETL trong việ
c
xây
d
ự
ng
kho
d
ữ
li
ệ
u
s
ẽ
quy
ết đị
nh
s
ự
thành
b
ạ
i
c
ủ
a
kho
d
ữ
li
ệ
u
[6].
Với mục đích nghiên cứu về
các
quá
trình
ETL
trong việc xây dựng kho dữ liệu, tôi chọn đề
tài
“Nghiên
cứu
qu
y
trình
ETL
trong
kho
dữ
liệu
ứng
dụng
vào
hệ
thống
dữ
liệu
kinh
doanh
trong
doanh
nghiệp
viễn
thông
”
.
1.
Mụ
c
đ
ích
c
ủ
a
đề
tài:
Ti
ế
p
c
ậ
n
các
ph
ươ
ng
pháp
tìm hiểu các bước trong một quy trinh
xây
dựng một hệ thống ETL, các phương án xử lý trong từng trường hợp cụ thể để có thể áp
dụng trong các bài toán thực tế.
2.
Đố
i
t
ượ
ng
và
ph
ạ
m
vi
nghiên
c
ứ
u:
Vi
ệ
c
nghiên
c
ứ
u
s
ẽ
t
ậ
p
trung
vào
lý
thuy
ế
t
xây
d
ự
ng
h
ệ
th
ố
ng
ETL,
áp
d
ụ
ng
vào
xây
d
ự
ng
ch
ức năng trích xuấ
t
v
ớ
i
ngu
ồ
n
d
ữ
li
ệ
u
t
ừ
h
ệ
4
th
ố
ng
d
ữ
li
ệ
u
Vinaphone.
3.
Ph
ươ
ng
pháp
nghiên
c
ứ
u:
Tìm
hi
ể
u
các
tài
li
ệ
u
liên
quan
đế
n
các
k
ỹ
thu
ậ
t
ELT
trong
kho
d
ữ
li
ệu, các phương pháp xây dự
ng
h
ệ
th
ố
ng
ETL.
4.
K
ế
t
c
ấ
u
c
ủ
a
lu
ậ
n
v
ă
n
Lu
ận văn gồm 3 chương
Chương
1:
T
ổ
ng
quan
v
ề
ETL
trong
kho
d
ữ
li
ệ
u
Chương này trình bày các khái niệ
m,
các
thành
ph
ầ
n,
ch
ức năng trong kho dữ
li
ệ
u,
các
ứ
ng
d
ụng cũng như nhữ
ng
mô
hình
kho
d
ữ
li
ệ
u.
T
ổ
ng
quan
v
ề
ETL,
các
thành
ph
ầ
n
và
vai
trò
ETL
trong
kho
d
ữ
li
ệ
u
Chương
2:
Ki
ế
n
trúc
và
các
thành
ph
ầ
n
ETL
Chương này tậ
p
trung
vào
chi
ti
ế
t
các
thành
ph
ầ
n
c
ủa ETL, các bướ
c
th
ự
c
hi
ệ
n
c
ủ
a
m
ộ
t
h
ệ
th
ố
ng
ETL,
nh
ữ
ng
v
ấn đề
g
ặ
p
ph
ả
i
v
ớ
i
m
ỗ
i
thành
ph
ầ
n
c
ụ
th
ể
trong
m
ộ
t
h
ệ
th
ố
ng
ETL.
Các
bi
ệ
n
pháp
gi
ả
i
quy
ế
t
v
ớ
i
m
ỗ
i
tình
hu
ố
ng
trong
nh
ữ
ng
bài
toán
c
ụ
th
ể
.
Chương
3:
Xây
d
ự
ng
modul
trích
xu
ấ
t
d
ữ
li
ệ
u
trong
ETL.
Chương cuố
i
cùng
c
ủ
a
lu
ận văn trình bày mộ
t
th
ử
nghi
ệ
m
nh
ỏ
áp
d
ụ
ng
ph
ầ
n
lý
thuy
ết đã nêu ở
2
chương trước. Đó là áp dụ
ng
th
ử
nghi
ệm phương pháp trích xuất đã
nghiên
c
ứ
u
trong
ph
ầ
n
lý
thuy
ế
t
vào
bài
toán
trích
xu
ấ
t
d
ữ
li
ệ
u
t
ừ
h
ệ
th
ố
ng
d
ữ
li
ệ
u
chi
ti
ế
t
cướ
c
và
d
ữ
li
ệ
u
c
ủ
a
h
ệ
th
ố
ng
tr
ả trướ
c.
5
CHƯƠNG
1.
TỔNG
QUAN
VỀ
ETL
TRONG
KHO
DỮ
LIỆU
1.
Kho
d
ữ
li
ệ
u
1.1.
Khái
ni
ệ
m
kho
d
ữ
li
ệ
u
Định nghĩa
do W.H.Inmon đưa ra :
Kho
d
ữ
li
ệ
u
(Data
Warehouse)
là
t
ậ
p
h
ợ
p
d
ữ
li
ệ
u
tích
h
ợp theo hướ
ng
ch
ủ đề
,
tương đố
i
ổn đị
nh,c
ậ
p
nh
ậ
t
đị
nh
k
ỳ
nh
ằ
m
h
ỗ
tr
ợ
quá
trình
t
ạ
o
quy
ế
t
đị
nh.[2]
Như vậ
y,
có
th
ể
th
ấ
y
r
ằng thông thườ
ng
m
ộ
t
kho
d
ữ
li
ệu được xem như một cơ sở
d
ữ
li
ệ
u
đượ
c
duy
trì
riêng
bi
ệ
t
trên cơ sở
d
ữ
li
ệ
u
t
ừ
nhi
ề
u
ngu
ồ
n
cơ sở
d
ữ
li
ệ
u
tác
nghi
ệ
p.
1.1.2.
Các
đặc
trưng
của
kho
dữ
liệu
M
ộ
t
kho
d
ữ
li
ệ
u
đượ
c
xác
đị
nh
là
m
ộ
t
c
ơ
s
ở
d
ữ
li
ệ
u
trong
đ
ó
có
ch
ứ
a
b
ố
n
đặ
c
tính
sau:
h
ướ
ng
ch
ủ đề
,
tính
ổ
n
đị
nh,
đượ
c
tích
h
ợ
p,
g
ắ
n
v
ớ
i
th
ờ
i
gian.
1.1.3.
Kiến
trúc
kho
dữ
liệu
Mô
hình
ki
ế
n
trúc
c
ủ
a
h
ệ
th
ố
ng
kho
d
ữ
li
ệu cơ bả
n
g
ồ
m
có
ba
thành
ph
ầ
n:
D
ữ
li
ệ
u
ngu
ồ
n,
vùng
d
ữ
li
ệ
u
trung
gian
và
kho
d
ữ
li
ệ
u
.
Hình
1.1.
Ki
ế
n
trúc
kho
d
ữ
li
ệ
u
1.1.3.1.
Kho
d
ữ
li
ệ
u
ch
ủ
đề
(Datamart)
Kho
d
ữ
li
ệ
u
ch
ủ đề
(Data
Mart)
c
ũ
ng
là
m
ộ
t
cơ
s
ở
d
ữ
li
ệ
u
có
nh
ữ
ng
đặ
c
đ
i
ể
m
gi
ố
ng
v
ớ
i
kho
d
ữ
li
ệ
u
nh
ư
ng
quy
mô
c
ủ
a
nó
nh
ỏ
h
ơ
n
và
l
ư
u
tr
ữ
d
ữ
li
ệ
u
v
ề
m
ộ
t
lĩn
h
v
ự
c,
m
ộ
t
chuyên
ngành
c
ụ
th
ể
.
Có
2
lo
ạ
i
-
Datamart
ph
ụ
thu
ộ
c.
6
-
Datamart độ
c
l
ậ
p.
1.1.3.2.
Siêu
d
ữ
li
ệ
u
(MetaData)
Metadata
là
m
ộ
t
lo
ạ
i
“d
ữ
li
ệ
u
v
ề
d
ữ
li
ệ
u”,
nó
đượ
c
xây
d
ự
ng
nh
ằ
m
m
ụ
c
đ
ích
mô
t
ả
c
ấ
u
trúc
n
ộ
i
dung
v
ề
d
ữ
li
ệ
u
bên
trong
c
ơ
s
ở
d
ữ
li
ệ
u.
Metadata
có
ý
ngh
ĩ
a
đặ
c
bi
ệ
t
quan
tr
ọ
ng
trong
vi
ệ
c
xây
d
ự
ng
và
t
ổ
ch
ứ
c
l
ư
u
tr
ữ
d
ữ
li
ệ
u
c
ủ
a
Data
Warehouse.
1.1.3.3.
Cơ
sở
d
ữ
li
ệ
u
kho
d
ữ
li
ệ
u
Cơ sở
d
ữ
li
ệ
u
t
ậ
p
trung
là
m
ộ
t
n
ề
n
t
ảng cơ bả
n
c
ủa môi trườ
ng
kho
d
ữ
li
ệu. Cơ sở
d
ữ
li
ệ
u
này
h
ầ
u
h
ết được cài đặ
t
d
ự
a
trên
công
ngh
ệ
c
ủ
a
H
ệ
th
ố
ng
qu
ả
n
tr
ị cơ sở
d
ữ
li
ệ
u
quan
h
ệ
(RDBMS).
1.1.4.
Các
ứng
dụng
của
kho
dữ
liệu
Kho
d
ữ
li
ệu đượ
c
s
ử
d
ụ
ng
theo
ba
cách
chính:
Cách
s
ử
d
ụ
ng
truy
ề
n
th
ố
ng
Trong
cách
s
ử
d
ụ
ng
này
vi
ệ
c
khai
thác
thông
tin
d
ự
a
trên
các
công
c
ụ
truy
v
ấ
n
và
báo
cáo.
Nh
ờ
có
vi
ệ
c
trích
l
ọ
c,
tích
h
ợ
p
và
chuy
ể
n
đổ
i
các
d
ữ
li
ệ
u
thô
sang
d
ạ
ng
d
ữ
li
ệ
u
có
ch
ấ
t
l
ượ
ng
cao
và
có
tính
ổ
n
đị
nh.
H
ỗ
tr
ợ
tr
ự
c
tuy
ế
n
(OLAP)
N
ế
u
ngôn
ng
ữ
truy
v
ấ
n
chu
ẩ
n
SQL
và
các
công
c
ụ
làm
báo
cáo
truy
ề
n
th
ố
ng
ch
ỉ
có
th
ể
miêu
t
ả
nh
ữ
ng
gì
có
trong
c
ơ
s
ở
d
ữ
li
ệ
u
thì
phân
tích
tr
ự
c
tuy
ế
n
có
kh
ả
nă
ng
phân
tích
d
ữ
li
ệ
u,
xem
xét
xem
gi
ả
thuy
ế
t
là
đún
g
hay
sai.
Tuy
nhiên
phân
tích
tr
ự
c
tuy
ế
n
l
ạ
i
không
có
kh
ả
nă
ng
đư
a
ra
gi
ả
thuy
ế
t.
Do
kích
th
ướ
c
quá
l
ớ
n
và
có
tính
ch
ấ
t
ph
ứ
c
t
ạ
p
nên
khó
có
th
ể
s
ử
d
ụ
ng
Data
Warehouse
cho
m
ụ
c
đ
ích
này.
Công
ngh
ệ
khai
phá
d
ữ
li
ệ
u
(Data
mining)
Trong
hoàn
c
ả
nh
hi
ệ
n
nay
s
ự
phát
tri
ể
n
c
ủ
a
d
ữ
li
ệ
u
đặ
t
ra
yêu
c
ầ
u
ph
ả
i
l
ư
u
tr
ữ
d
ữ
li
ệ
u
ph
ứ
c
t
ạ
p
và
có
kích
th
ướ
c
l
ớ
n.
Vi
ệ
c
khai
phá
d
ữ
li
ệ
u
tr
ở
thành
m
ộ
t
nhu
c
ầ
u
khoa
h
ọ
c
và
trong
ho
ạ
t
độ
ng
th
ự
c
ti
ễ
n.
1.1.5.
Thiết
k
ế
CSDL
cho
kho
dữ
li
ệ
u
1.1.5.1.
Gi
ả
n
đồ
hình
sao
7
Gi
ả
n
đồ
hình
sao
đượ
c
đưa
ra
l
ần đầ
u
tiên
b
ở
i
Raph
Kimball
như
là
m
ộ
t
l
ự
a
ch
ọ
n
thi
ế
t
k
ế
CSDL
cho
kho
d
ữ
li
ệ
u.
Trong
gi
ả
n
đồ
hình
sao,
d
ữ
li
ệ
u
đượ
c
xác
đị
nh
và
phân
lo
ạ
i
theo
2
ki
ể
u:
s
ự
ki
ệ
n
(b
ả
ng
Fact)
và
chi
ề
u
(các
b
ả
ng
Dimension:
các
b
ả
ng
liên
k
ế
t).
1.1.5.2.
Gi
ả
n
đồ
hình
tuy
ế
t
r
ơ
i
Gi
ả
n
đồ
hình
tuy
ế
t
r
ơ
i
là
m
ộ
t
s
ự
m
ở
r
ộ
ng
c
ủ
a
gi
ả
n
đồ
hình
sao,
t
ạ
i
đó
m
ỗ
i
cánh
sao
không
ph
ả
i
là
m
ộ
t
b
ả
ng
Chi
ề
u
mà
là
nhi
ề
u
b
ả
ng.
Trong
d
ạ
ng
gi
ả
n
đồ
này,
m
ỗ
i
b
ả
ng
theo
chi
ề
u
c
ủ
a
gi
ả
n
đồ
hình
sao
đượ
c
chu
ẩ
n
hóa
hơn.
Gi
ả
n
đồ
hình
tuy
ế
t
r
ơ
i
c
ả
i
thi
ệ
n
năng
su
ấ
t
truy
v
ấ
n,
t
ố
i
thi
ể
u
không
gian
đĩa
c
ầ
n
thi
ế
t
để
lưu
tr
ữ
d
ữ
li
ệ
u
và
c
ả
i
thi
ệ
n
năng
su
ấ
t
nh
ờ
vi
ệ
c
ch
ỉ
ph
ả
i
k
ế
t
h
ợ
p
nh
ữ
ng
b
ả
ng
có
kích
th
ướ
c
nh
ỏ
hơn
thay
vì
ph
ả
i
k
ế
t
h
ợ
p
nh
ữ
ng
b
ả
ng
có
kích
thướ
c
l
ớ
n
l
ạ
i
không
chu
ẩ
n
hóa.
1.1.5.3.
Gi
ả
n
đồ
k
ế
t
h
ợ
p
Là
k
ế
t
h
ợ
p
gi
ữ
a
gi
ả
n
đồ
hình
sao
d
ự
a
trên
b
ả
ng
S
ự
ki
ệ
n
và
nh
ữ
ng
b
ả
ng
Chi
ề
u
không
chu
ẩ
n
hóa
theo
các
chu
ẩ
n
1,
2,
3
và
gi
ả
n
đồ
hình
tuy
ế
t
r
ơ
i
trong
đ
ó
t
ấ
t
c
ả
các
b
ả
ng
Chi
ề
u
đề
u
đã
đượ
c
chu
ẩ
n
hóa.
1.2.
ETL
và
vai
trò
ETL
trong
kho
dữ
liệu
1.2.1.
Khái
niệm
ETL
H
ệ
th
ố
ng
ETL
(Extract-Transform-Load)
là
n
ề
n
t
ả
ng
c
ủ
a
kho
d
ữ
li
ệ
u.
M
ộ
t
h
ệ
th
ố
ng
ETL đượ
c
thi
ế
t
k
ế
cho
vi
ệ
c
trích
xu
ấ
t
d
ữ
li
ệ
u
t
ừ
các
h
ệ
th
ố
ng
ngu
ồ
n,
chuy
ển
đổ
i
d
ữ
li
ệ
u
đả
m
b
ả
o
các
ngu
ồn độ
c
l
ậ
p
có
th
ể
tích
h
ợ
p,
và
cu
ố
i
cùng
d
ữ
li
ệ
u
sau
chuy
ển đổi được đưa
vào
kho
d
ữ
li
ệ
u
ph
ụ
c
v
ụ
m
ục đích phát triể
n
ứ
ng
d
ụ
ng
hay
ph
ụ
c
v
ụ
các
m
ục đích kho dữ
li
ệ
u.
[7,
tr.xii]
1.2.1
Vai
trò
của
ETL
trong
kho
dữ
liệu
H
ệ
th
ố
ng
ETL
ph
ải
đ
óng
m
ộ
t
vai
trò
quan
tr
ọ
ng
trong
vi
ệ
c
cung
c
ấ
p
cho
các
ứ
ng
d
ụ
ng
ngườ
i
s
ử
d
ụ
ng
m
ộ
t
khuôn
d
ạ
ng
d
ữ
li
ệ
u
phù
h
ợ
p.
B
ả
n
ch
ấ
t
Kho
d
ữ
li
ệ
u
là
quá
trình
l
ấ
y
d
ữ
li
ệ
u
t
ừ
các
h
ệ
th
ố
ng
LS
và
h
ệ
th
ống cơ sở
d
ữ
li
ệ
u
tác
nghi
ệ
p
và
chuy
ển đổ
i
thành
thông
tin
có
t
ổ
ch
ứ
c
trong
m
ột đị
nh
d
ạ
ng
thân
thi
ệ
n
v
ới ngườ
i
s
ử
d
ụng; trên cơ sở đó có thể
phân
tích
d
ữ
li
ệ
u
và
h
ỗ
tr
ợ
quy
ết đị
nh
kinh
doanh.
Quá
b
ắt đầ
u
t
ừ
các
h
ệ
th
ố
ng
ngu
ồn đế
n
khi
d
ữ
li
ệ
u
được đưa vào các bả
ng
chi
ề
u
hay
b
ả
ng
s
ự
ki
ệ
n
s
ẽ
chi
phí
ít
nh
ấ
t
70%
th
ờ
i
gian,
n
ỗ
l
ự
c
c
ủ
a
h
ầ
u
h
ế
t
các
d
ự
án
kho
d
ữ
li
ệ
u.
Trong
tài
li
ệu [7, tr.23] có đưa ra một định nghĩa về
kho
d
ữ
li
ệ
u
nói
lên
vai
trò
c
ủ
a
ETL
trong
kho
d
ữ
li
ệ
u
8
1.2.2
Các
thành
phần
của
ETL
.
Trích
xu
ấ
t:
D
ữ
li
ệ
u
ngu
ồ
n
t
ừ
r
ấ
t
nhi
ề
u
ngu
ồ
n
khác
nhau
và
có
th
ể
có
r
ấ
t
nhi
ề
u
c
ấ
u
trúc
d
ữ
li
ệu khác nhau như nhiề
u
lo
ại cơ sở
d
ữ
li
ệ
u,
t
ừ
t
ệ
p
d
ữ
li
ệ
u
excel
hay
t
ừ
t
ệ
p
d
ữ
li
ệ
u
thô.
Vì
th
ế
nhi
ệ
m
v
ụ
chính
c
ủa bướ
c
này
là
trích
xu
ấ
t
d
ữ
li
ệ
u
t
ừ
h
ệ
th
ố
ng
ngu
ồn để
x
ử
lý.
Chuy
ển đổ
i
:
Đây là quá trình rấ
t
ph
ứ
c
t
ạp
dùng để
chuy
ển đổ
i
d
ữ
li
ệ
u
ngu
ồ
n
m
ộ
t
mô
hình
khác
phù
h
ợ
p
và
chuy
ển vào cơ sở
d
ữ
li
ệu đích.
T
ả
i
d
ữ
li
ệ
u
:
Đây là quá trình
đẩ
y
d
ữ
li
ệu sau khi đã đượ
c
chuy
ển đổ
i
vào
kho
d
ữ
li
ệ
u.
D
ữ
li
ệu sau khi đã đượ
c
chuy
ển đổ
i
s
ẽ đượ
c
t
ả
i
vào
kho
d
ữ
li
ệ
u.
9
CHƯƠNG
2.
KIẾN
TRÚC
VÀ
CÁC
THÀNH
PHẦN
CỦA
ETL.
2.1.
Tổng
quan
ETL
2.1.1.
Những
đặc
điểm
chính
của
ETL
M
ỗ
i
ch
ức năng ETL thự
c
hi
ệ
n
m
ộ
t
m
ục đích quan trọ
ng.
Khi
mu
ố
n
chuy
ể
n
d
ữ
li
ệ
u
t
ừ
h
ệ
th
ố
ng
ngu
ồ
n
vào
h
ệ
th
ống thông tin được lưu trữ
trong
kho
d
ữ
li
ệ
u,
vi
ệ
c
th
ự
c
hi
ệ
n
các
ch
ức năng này đề
u
c
ầ
n
thi
ết. Để thay đổ
i
d
ữ
li
ệu thành thông tin, trướ
c
tiên
ph
ả
i
xác đị
nh
các
d
ữ
li
ệ
u.
Sau
khi
xác đị
nh
d
ữ
li
ệ
u,
không
th
ể đơn giản là đổ
d
ữ
li
ệ
u
vào
kho.
D
ữ
li
ệ
u
ph
ải đượ
c
trích
xu
ấ
t
và
qua
các
bi
ến đổ
i
phù
h
ợp để đượ
c
chuy
ển đổ
i
thành
thông
tin.
Sau
khi đã c
huy
ển đổ
i
d
ữ
li
ệ
u,
nó
v
ẫ
n
không
h
ữ
u
ích
v
ới ngườ
i
s
ử
d
ụ
ng
cu
ối cùng cho đế
n
khi
nó đượ
c
chuy
ể
n
vào
kho
d
ữ
li
ệ
u.
T
ả
i
d
ữ
li
ệ
u
là
m
ộ
t
ch
ức năng
cu
ố
i
cùng
. Như vậ
y
ta
ph
ả
i
th
ự
c
hi
ệ
n
c
ả
3
ch
ức năng của ETL để
chuy
ển đổ
i
d
ữ
li
ệ
u
thành
thông
tin.
2.1.2.
Các
chi
phí
cho
h
ệ
th
ố
ng
ETL
Nói
chung
ta
s
ẽ
tiêu
t
ố
n
kho
ả
ng
50-70%
công
s
ứ
c
c
ủ
a
d
ự
án
vào
các
ch
ức năng ETL.
2.1.3.
Yêu
cầu
với
ETL
và
các
bước
ETL
Cho
bảng
sự
kiện
ETL
cho
bảng
chiều
Viết
các
thủ
tục
cho
tải
tất
cả
dữ
liệu
Tổ
chức
vùng
xử
lý
dữ
liệu
và
công
cụ
kiểm
thử
Kế
hoạch
cho
các
bảng
tổng
hợp
Xác
định
các
dữ
liệu
chuyển
đổi
và
các
luật
làm
sạch
Thiết
lập
các
luật
trích
xuất
dữ
liệu
Chuẩn
bị
cho
việc
ánh
xạ
giữa
các
thành
phần
dữ
liệu
đích
với
dữ
liệu
nguồn
Xác
định
nguồn
dữ
liệu,
cả
dữ
liệu
trong
và
ngoài
Xác
định
các
dữ
liệu
đích
cần
thiết
trong
kho
dữ
liệu
Hình
2.1.
Các
bướ
c
chính
c
ủ
a
m
ộ
t
quy
trình
ETL.
2.1.4.
Các
yếu
tố
quan
trọng
đối
với
ETL
-
Xác định được độ
ph
ứ
c
t
ạp và đa dạ
ng
c
ủ
a
các
h
ệ
th
ố
ng
ngu
ồ
n
d
ữ
li
ệu để
có
th
ể
xây
d
ự
ng
đượ
c
các
ch
ức năng trích xuấ
t
và
chuy
ển đổ
i
phù
h
ợ
p.
-
Xác định đượ
c
các
ki
ể
u
t
ả
i
và
th
ờ
i
gian
t
ả
i
cho
các
lo
ạ
i
d
ữ
li
ệu để có phương án phù hợ
p.
10
2.2.
Vùng
dữ
liệu
trung
gian
Trong
t
ấ
t
c
ả
các
ki
ế
n
trúc
kho
d
ữ
li
ệ
u,
luôn
có
m
ộ
t
vùng
ch
ứ
a
d
ữ
li
ệ
u
g
ọ
i
là
vùng
trung
gian
hay
còn
g
ọ
i
là
vùng
x
ử
lý.
D
ữ
li
ệ
u
đượ
c
chuy
ể
n
t
ừ
nhi
ề
u
ngu
ồ
n
vào
vùng
x
ử
lí
mà
không
thông
qua
(ho
ặ
c
r
ấ
t
ít)
công
đ
o
ạ
n
x
ử
lí
nào.
2.3.
Trích
xuất
dữ
liệu
2.3.1.
Xác
định
nguồn
dữ
liệu
Xác đị
nh
ngu
ồ
n
d
ữ
li
ệ
u
bao
g
ồ
m
vi
ệc xác đị
nh
t
ấ
t
c
ả
các
ngu
ồ
n
d
ữ
li
ệ
u
thích
h
ợ
p,
các
d
ữ
li
ệ
u
c
ầ
n
thi
ết để đưa vào kho dữ
li
ệ
u.
Hình
2.2.
Các
bước
xác
đị
nh
ngu
ồ
n
d
ữ
li
ệ
u
2.3.2.
Các
k
ỹ
thuật
trích
xuất
dữ
liệu
2.3.2.1
Các
lo
ạ
i
k
ỹ
thu
ậ
t
trích
xu
ấ
t
D
ữ
li
ệ
u
trong
h
ệ
th
ố
ng
ngu
ồ
n
có
th
ể rơi vào hai loạ
i.
Giá
tr
ị
hi
ệ
n
t
ạ
i.
H
ầ
u
h
ế
t
các
thu
ộ
c
tính
trong
các
h
ệ
th
ố
ng
ngu
ồn rơi vào loạ
i
này.
Ở
đây giá trị được lưu trữ
c
ủ
a
m
ộ
t
thu
ộ
c
tính
mô
t
ả
giá
tr
ị
c
ủ
a
thu
ộ
c
tính
ngay
th
ời điể
m
này
c
ủ
a
th
ờ
i
gian.
Các
giá
tr
ị
t
ạ
m
th
ờ
i
ho
ặ
c
nh
ấ
t
th
ờ
i.
Khi
các
giao
d
ị
ch
x
ả
y
ra,
các
giá
tr
ị
thay
đổi. Không có cách nào để
bi
ế
t
bao
lâu
giá
tr
ị
hi
ệ
n
t
ạ
i
s
ẽ
gi
ữ
nguyên
hay
s
ẽ thay đổ
i.
11
Tr
ạng thái đị
nh
kì.
Lo
ạ
i
này
không
ph
ổ
bi
ến như thể
lo
ại trướ
c.
Trong
lo
ạ
i
này,
giá
tr
ị
c
ủ
a
m
ộ
t
thu
ộc tính đượ
c
gi
ữ như mộ
t
tr
ạ
ng
thái
m
ỗi khi có thay đổ
i
x
ả
y
ra.
T
ạ
i
m
ỗ
i
th
ờ
i
điể
m,
gíá
tr
ị
tr
ạng thái được lưu trữ
v
ớ
i
tham
chi
ếu đế
n
th
ờ
i
gian
khi
giá
tr
ị thay đổ
i.
Khi
tri
ể
n
khai
m
ộ
t
h
ệ
th
ố
ng
kho
d
ữ
li
ệ
u,
các
d
ữ
li
ệu ban đầ
u
v
ớ
i
m
ộ
t
th
ờ
i
gian
nh
ấ
t
đị
nh
ph
ải đượ
c
chuy
ể
n
vào
kho
d
ữ
li
ệu, sau đó ta phải đưa vào các dữ
li
ệu thay đổ
i
sau
t
ả
i
ban đầ
u.
Nói
r
ộ
ng
ra,
có
2
lo
ạ
i
chính
c
ủ
a
trích
xu
ấ
t
d
ữ
li
ệ
u
là
d
ữ
li
ệu tĩnh và dữ
li
ệ
u
thay
đổ
i.Trích
xu
ấ
t
d
ữ
li
ệu tĩnh chiế
m
ch
ủ
y
ế
u
trong
t
ải ban đầ
u,
và
trích
xu
ấ
t
d
ữ
li
ệu thay đổ
i
trong
t
ải gia tăng.
T
ải
gia
tăng
có
th
ể
phân
chia
thành
trích
xu
ấ
t
theo
th
ờ
i
gian
th
ự
c
ho
ặ
c
trích
xu
ấ
t
ch
ậ
m
ch
ậ
m.
Trong
th
ờ
i
gian
th
ự
c
n
ắ
m
b
ắ
t
d
ữ
li
ệ
u
có
3
tùy
ch
ọ
n,
n
ắ
m
b
ắ
t
d
ữ
li
ệ
u
ch
ậ
m
ta
có
2
tùy
ch
ọ
n.
2.3.2.2.
Các
k
ỹ
thu
ậ
t
trích
xu
ấ
t
d
ữ
li
ệ
u
th
ờ
i
gian
th
ự
c
N
ắ
m
b
ắ
t
d
ữ
li
ệ
u
qua
b
ả
n
ghi
giao
d
ị
ch.
Tùy
ch
ọ
n
này
s
ử
d
ụ
ng
b
ả
n
ghi
giao
d
ị
ch
c
ủ
a
h
ệ
qu
ả
n
tr
ị cơ sở
d
ữ
li
ệu đượ
c
duy
trì
cho
vi
ệ
c
khôi
ph
ụ
c
khi
có
l
ỗ
i
x
ả
y
ra.
M
ỗ
i
giao
d
ị
ch
thêm,
c
ậ
p
nh
ậ
t
hay
xóa
m
ộ
t
b
ả
n
ghi
trong
b
ảng cơ sở
d
ữ
li
ệ
u,
h
ệ
qu
ả
n
tr
ị cơ sở
d
ữ
li
ệ
u
ngay
l
ậ
p
t
ứ
c
sinh
ra
m
ộ
t
b
ả
n
ghi
log.
N
ắ
m
b
ắt thông qua trigger cơ sở
d
ữ
li
ệ
u.
Tùy
ch
ọn này cũng đượ
c
áp
d
ụ
ng
cho
các
h
ệ
th
ố
ng
ngu
ồ
n
d
ữ
li
ệ
u
s
ử
d
ụ
ng
ứ
ng
d
ụng cơ sở
d
ữ
li
ệ
u.
Ta
có
th
ể
t
ạ
o
các
trigger
cho
t
ấ
t
c
ả
các
s
ự
ki
ệ
n
mà
ta
c
ầ
n
n
ắ
m
b
ắt. Đầ
u
ra
c
ủa trigger đượ
c
ghi
vào
m
ộ
t
t
ệp độ
c
l
ậ
p
và
s
ẽ đượ
c
s
ử
d
ụng để
trích
xu
ấ
t
d
ữ
li
ệ
u
cho
kho
d
ữ
li
ệ
u.
vi
ệ
c
t
ạ
o
và
duy
trì
trigger
trong
su
ố
t
các
quá
trình
c
ủ
a
h
ệ
th
ố
ng
ngu
ồ
n
s
ẽ tăng thêm các chi phí tài nguyên và thờ
i
gian
c
ủ
a
h
ệ
th
ố
ng
ngu
ồ
n.
N
ắ
m
b
ắ
t
trong
các
ứ
ng
d
ụ
ng
ngu
ồ
n.
K
ỹ
thu
ật này đượ
c
xem
n
hư nắ
m
b
ắ
t
d
ữ
li
ệ
u
ứ
ng
d
ụ
ng
h
ỗ
tr
ợ
.
Nói
cách
khác,
các
ứ
ng
d
ụ
ng
ngu
ồn đượ
c
th
ự
c
hi
ện để
h
ỗ
tr
ợ
cho
vi
ệ
c
n
ắ
m
b
ắ
t
d
ữ
li
ệ
u
cho
kho
d
ữ
li
ệ
u.
Ta
ph
ả
i
ch
ỉ
nh
s
ửa các chương trình ứ
ng
d
ụng liên quan đượ
c
vi
ế
t
cho
các têp và cơ sở
d
ữ
li
ệ
u
ngu
ồ
n
2.3.2.3.
Các
k
ỹ
thu
ậ
t
trích
xu
ấ
t
d
ữ
li
ệ
u
ch
ậ
m
N
ắ
m
b
ắ
t
d
ự
a
trên
ngày
tháng
và
nhãn
th
ờ
i
gian.
M
ỗ
i
khi
m
ộ
t
b
ản ghi đượ
c
t
ạ
o
ra
ho
ặ
c
c
ậ
p
nh
ậ
t
nó
có
th
ẻ được đánh dấ
u
b
ở
i
m
ộ
t
nhãn
bi
ể
u
di
ễ
n
b
ở
i
ngày
và
th
ờ
i
gian.
Nhãn
th
ờ
i
gian
cung
c
ấp cơ sở
cho
vi
ệ
c
ch
ọ
n
ra
các
b
ả
n
ghi
cho
vi
ệ
c
trích
xu
ấ
t.
Trích
xu
ấ
t
b
ằ
ng
cách
so
sánh
t
ậ
p
tin.
N
ế
u
các
k
ỹ
thu
ậ
t
trên
không
kh
ả
thi
cho
t
ậ
p
tin
ngu
ồ
n
c
ụ
th
ể, khi đó kỹ
thu
ật này được xem như biệ
n
pháp
cu
ố
i
cùng.
K
ỹ
thu
ật này cũng đượ
c
g
ọ
i
12
v
ớ
i
tên
khác
là
k
ỹ
thu
ậ
t
so
sánh
s
ự
khác
nhau
gi
ữ
a
ả
nh
ch
ụ
p
b
ở
i
vì
nó
so
sánh
2
ả
nh
ch
ụ
p
c
ủ
a
ngu
ồ
n
d
ữ
li
ệ
u.
2.3.2.4. Đánh giá các kỹ
thu
ậ
t
trích
xu
ấ
t
2.4.
Làm
sạch
và
chuyển
đổi
dữ
liệu
2.4.1
Các
nhiệm
vụ
cơ
bản
của
chuyển
đổi
dữ
liệu
Trích
ch
ọ
n.
Nhi
ệ
m
v
ụ
này
n
ằ
m
ở
ph
ần đầ
u
c
ủ
a
toàn
b
ộ
quá
trình
chuy
ển đổ
i.
Có
th
ể
toàn
b
ộ
ho
ặ
c
m
ộ
t
s
ố
b
ả
n
ghi
t
ừ
d
ữ
li
ệ
u
ngu
ồ
n
Tách/Nh
ậ
p.
Nhi
ệ
m
v
ụ
này
bao
g
ồ
m
các
lo
ạ
i
thao
tác
d
ữ
li
ệu để
th
ự
c
hi
ệ
n
vi
ệ
c
ch
ọ
n
các
ph
ầ
n
d
ữ
li
ệ
u
ngu
ồ
n.
Chuy
ển
đổ
i.
chu
ẩ
n
hóa
gi
ữ
a
d
ữ
li
ệ
u
trích
xu
ấ
t
t
ừ
các
ngu
ồ
n
khác
nhau
và
t
ạo ra các trườ
ng
mà ngườ
i
dùng
th
ể
s
ử
d
ụ
ng
và
có
th
ể
hi
ểu đượ
c.
T
ổ
ng
h
ợ
p.
Khi
vi
ệc lưu trữ
d
ữ
li
ệ
u
t
ổ
ng
h
ợ
p
đượ
c
yêu
c
ầu thay vì lưu trữ
d
ữ
li
ệ
u
ở
m
ứ
c
th
ấ
p.
Làm
giàu
d
ữ
li
ệ
u:
Nhi
ệ
m
v
ụ
này
s
ắ
p
x
ếp và đơn giản hóa các trườ
ng
riêng
bi
ết để
làm
cho
chúng
tr
ở
nên
h
ữ
u
d
ụng hơn cho kho dữ
li
ệ
u.
2.4.2
Các
kiểu
chuyển
đổi
dữ
liệu
-
S
ử
a
l
ại đị
nh
d
ạ
ng.
-
Gi
ải mã các trườ
ng.
-
Giá
tr
ị
tính
toán
và
giá
tr
ị
th
ứ
phát.
-
Chia
nh
ỏ các trường đơn.
-
G
ộ
p
thông
tin.
-
Chuy
ển đổ
i
B
ộ
ký
t
ự
.
-
Chuy
ển đổi đơn vị đo lườ
ng.
-
Chuy
ển đổ
i
th
ờ
i
gian.
-
T
ổ
ng
h
ợ
p.
-
Cơ cấ
u
l
ạ
i
khóa.
-
Xóa
b
ả
n
ghi
trùng.
2.4.3.
Tích
hợp
và
hợp
nhất
dữ
liệu
2.4.3.1. Xác
đị
nh
th
ự
c
th
ể
trong
chuy
ển đổ
i
d
ữ
li
ệ
u.
Th
ự
c
th
ể
có
th
ể
xu
ấ
t
hi
ệ
n
trong
nhi
ề
u
h
ệ
th
ố
ng
khác
nhau,
làm
th
ế
nào
để
t
ổng hơp
các
ngu
ồ
n
này
mà
không
s
ợ
b
ị
trùng
l
ặ
p
hay
b
ị
thi
ế
u.
13
-
Bước
đầ
u
tiên,
t
ấ
t
c
ả
các
b
ả
n
gi,
không
phân
bi
ệt
có
trùng
nhau
hay
không,
đượ
c
đị
nh
danh
duy
nh
ấ
t.
-
Bướ
c
th
ứ
hai
là
h
ợ
p
các
b
ả
n
ghi
trùng
m
ột cách đị
nh
k
ỳ
thông
qua
các
gi
ả
i
thu
ậ
t
t
ự
độ
ng
và
ki
ể
m
tra
th
ủ
công.
2.4.3.2.
Tích
h
ợ
p
nhi
ề
u
ngu
ồ
n
d
ữ
li
ệ
u.
V
ấn đề
này
là
k
ế
t
qu
ả
c
ủ
a
vi
ệ
c
m
ộ
t
ph
ầ
n
t
ử
d
ữ
li
ệ
u
có
nhi
ều hơn mộ
t
ngu
ồ
n
d
ữ
li
ệ
u.
M
ộ
t
gi
ải pháp đơn giản là đặt ưu tiên cho
các
ngu
ồ
n
và
ch
ọ
n
ngu
ồn có độ ưu tiên cao
2.4.4.
Chuyển
đổi
các
thuộc
tính
chiều
Trong
ph
ầ
n
này
xem
xét
các
lo
ại thay đổ
i
v
ớ
i
thu
ộ
c
tính
chi
ề
u,
các
phương pháp để
x
ử
lý
các
lo
ại thay đổ
i
d
ữ
li
ệ
u
chi
ề
u.
-
Thay đổ
i
lo
ạ
i
1
là
s
ử
a
l
ỗ
i.
Các
lo
ại này đượ
c
áp
d
ụ
ng
cho
kho
d
ữ
li
ệ
u
không
c
ầ
n
gi
ữ
tính
l
ị
ch
s
ử
.
-
Lo
ại 2 thay đổ
i
gi
ữ
tính
l
ị
ch
s
ử
c
ủ
a
kho
d
ữ
li
ệ
u.
-
Lo
ại 3 thay đổ
i
là
nh
ững thay đổ
i
d
ự
ki
ến nơi ngườ
i
dùng
c
ầ
n
có
kh
ả năng phân
tích
các
s
ố
li
ệ
u
trong
c
ả
2
cách
–
có thay đổi, không thay đổ
i.
2.5.
Tải
dữ
liệu
2.5.1.
Các
loại
tải
dữ
liệu
T
ải
đầ
u
tiên
–
t
ậ
p
h
ợ
p
t
ấ
t
c
ả
các
b
ả
ng
kho
d
ữ
li
ệ
u
cho
l
ần đầ
u
tiên.
T
ả
i
b
ổ
sung
–
áp
d
ụ
ng
trên
nh
ững thay đổ
i
khi
c
ầ
n
thi
ế
t
m
ột cách đị
nh
kì
Làm
tươi
toàn
bộ
-
xóa
hoàn
toàn
n
ộ
i
dung
c
ủ
a
1
ho
ặ
c
nhi
ề
u
b
ả
ng
và
t
ả
i
l
ạ
i
v
ớ
i
d
ữ
li
ệ
u
m
ớ
i
(
T
ải đầ
u
tiên
là
m
ột làm tươi toàn bộ
).
2.5.1.
Kỹ
thuật
và
quy
trình
tải
dữ
liệu
Có
4
mô
hình
t
ả
i
d
ữ
li
ệ
u
:
Load,
Append,
Destructive
Merge,
Constructive
Merge
Load.
N
ế
u
b
ả
ng
m
ục tiêu đã tồ
n
t
ạ
i
và
d
ữ
li
ệu đã tồ
n
t
ạ
i
trong
b
ả
ng,
quá
trình
t
ả
i
s
ẽ
xóa
d
ữ
li
ệu đã có và tả
i
d
ữ
li
ệ
u
t
ừ
t
ập tin đế
n.
N
ế
u
b
ảng đã rỗng trướ
c
khi
t
ả
i,
ti
ế
n
trình
t
ải đơn giả
n
t
ả
i
d
ữ
li
ệ
u
t
ừ file đế
n.
Append.
Ta
có
th
ể
coi
vi
ệ
c
t
ả
i
append
gi
ống như mộ
t
m
ở
r
ộ
ng
c
ủ
a
Load.
N
ế
u
d
ữ
li
ệu đã
t
ồ
n
t
ạ
i
trong
b
ả
ng,
ti
ế
n
trình
append
s
ẽ thêm vô điề
u
ki
ệ
n
các
d
ữ
li
ệ
u
vào,
gi
ữ
nguyên
d
ữ
li
ệ
u
hi
ệ
n
có
trong
các
b
ả
ng
m
ụ
c
tiêu.
Khi
m
ộ
t
b
ả
n
ghi
trùng
v
ớ
i
m
ộ
t
b
ản ghi đã có, ta có thể
xác đị
nh
cách
x
ử
lý
d
ữ
li
ệu đẩ
y
trùng.
Các
b
ản ghi đầ
u
vào
có
th
ể cho phép thêm vào như là
d
ữ
li
ệu
trùng.
Trong
trườ
ng
h
ợ
p
khác,
b
ả
n
ghi
trùng
ở
đầ
u
và
b
ị
lo
ạ
i
b
ỏ
trong
quá
trình
append.
14
Destructive
Merge.
Trong
mô
hình
này,ta
t
ả
i
d
ữ
li
ệu đầ
u
vào
vào
b
ả
ng
d
ữ
li
ệu đích. Nế
u
khóa
chính
c
ủ
a
b
ản ghi đầ
u
v
ớ
i
gi
ố
ng
khóa
c
ủ
a
m
ộ
t
b
ản ghi đã có, khi đó nó cậ
p
nh
ậ
t
b
ả
n
ghi đích tương ứ
ng.
N
ế
u
b
ản ghi đầ
u
vào
là
m
ộ
t
b
ả
n
ghi
m
ớ
i
không
trùng
khóa
v
ớ
i
b
ả
n
ghi
đã có, khi đó bản ghi đượ
c
thêm
vào
b
ả
ng
d
ữ
li
ệu đích.
Constructive
Merge.
Ch
ế độ này hơi khác so vớ
i
Destructive
Merge
.
N
ế
u
khóa
chính
c
ủ
a
m
ộ
t
b
ả
n
ghi
trùng
v
ớ
i
khóa
c
ủ
a
b
ản ghi đã có, để
l
ạ
i
b
ả
n
ghi
này,
thêm
b
ả
n
ghi
m
ới và đánh
d
ấ
u
b
ả
n
ghi
thêm
m
ới như bả
n
ghi
thay
th
ế
cho
b
ản ghi cũ.
Cách
áp
d
ụ
ng
cho
3
lo
ạ
i
t
ả
i
c
ủ
a
kho
d
ữ
li
ệ
u.
*)
Quy
trình
t
ả
i
cho
t
ừ
ng
lo
ạ
i
T
ải
ban
đầ
u:
V
ớ
i
l
ầ
n
ch
ạy đầ
u
tiên
c
ủ
a
t
ải ban đầ
u
ta
s
ử
d
ụ
ng
ki
ể
u
t
ải Load, sau đó tiế
p
t
ụ
c
v
ớ
i
ch
ế độ
Append.
T
ải
gia
tăng
.
Các
ứ
ng
d
ụ
ng
liên
t
ục thay đổ
i
theo
các
h
ệ
th
ố
ng
ngu
ồ
n.
Vì
v
ậ
y,
ta
c
ầ
n
m
ộ
t
phương pháp để
n
ắ
m
b
ắt đượ
c
chu
k
ỳ thay đổ
i.
N
ế
u
nhãn
th
ời gian được xem như
mộ
t
ph
ầ
n
khóa
chính
ho
ặ
c
n
ế
u
nhãn
th
ờ
i
gian,
khi đó cấ
u
trúc
này
có
th
ể đượ
c
s
ử
d
ụng để
gi
ữ
chu
k
ỳ
t
ự
nhiên
c
ủa các thay đổ
i.
S
ử
d
ụ
ng
Constructive Merge.
Các
b
ản ghi đã có có thể
xóa
b
ỏ
và
thay
th
ế
b
ằ
ng
d
ữ
li
ệ
u
m
ớ
i.
Ch
ế độ này đượ
c
áp
d
ụ
ng
cho
b
ấ
t
k
ỳ
b
ả
ng
m
ụ
c
tiêu
nào
mà
b
ả
ng
m
ụ
c
tiêu
l
ị
ch
s
ử
không
quan
tr
ọ
ng.
S
ử
d
ụ
ng
Destructive Merge
T
ả
i
l
àm
tươi
toàn
bộ
.
Lo
ạ
i
ứ
ng
d
ụng liên quan đến đị
nh
k
ỳ
ghi
l
ạ
i
toàn
b
ộ
kho
d
ữ
li
ệu. Đôi
khi,
ta
c
ầ
n
làm
m
ớ
i
l
ạ
i
m
ộ
t
s
ố
b
ả
ng
c
ụ
th
ể. Làm tươi mộ
t
ph
ầ
n
r
ấ
t
hi
ế
m
b
ở
i
vì
m
ọ
i
b
ả
ng
chi
ều đượ
c
g
ắ
n
v
ớ
i
b
ả
ng
s
ự
ki
ệ
n.
2.5.2
Làm
tươi
dữ
liệu
và
c
ập
nhât
dữ
liệu
Sau
t
ải ban đầ
u,
ta
có
th
ể
duy
trì
kho
d
ữ
li
ệ
u
và
c
ậ
p
nh
ậ
t
nó
v
ớ
i
2
phương thứ
c:
C
ậ
p
nh
ậ
t
-
ứ
ng
d
ụ
ng
cho
d
ữ
li
ệu thay đổ
i
trong
h
ệ
th
ố
ng
ngu
ồ
n.
Làm tươi
–
t
ả
i
l
ạ
i
toàn
b
ộ
theo
chu
k
ỳ
.
2.5.3.
Phương
pháp
tải
với
các
bảng
chiều
Trong
kho
d
ữ
li
ệ
u,
ta
s
ử
d
ụ
ng
khóa
sinh
b
ở
i
h
ệ
th
ố
ng.
B
ả
n
ghi
trong
h
ệ
th
ố
ng
ngu
ồ
n
có
khóa
c
ủ
a
chúng.
Vì
v
ậy, trướ
c
khi
d
ữ
li
ệ
u
ngu
ồ
n
có
th
ể đưa vào bả
ng
chi
ề
u,
cho
dù
là
t
ả
i
ban đầ
u
hay
t
ả
i
trên
d
ữ
li
ệu thay đổ
i,
thì
khóa
c
ủ
a
s
ả
n
ph
ẩ
m
c
ầ
n
chuy
ể
n
sang
khóa
c
ủ
a
h
ệ
th
ố
ng
trong
kho
d
ữ
li
ệ
u.
Ta
có
th
ể
c
ầ
n
coi
chuy
ển đổi khóa như mộ
t
ph
ầ
n
c
ủ
a
ch
ức năng
truy
ển đổ
i
ho
ặ
c
th
ự
c
hi
ệ
n
m
ộ
t
cách
riêng
bi
ệt trướ
c
khi
th
ự
c
hi
ệ
n
các
ch
ức năng tả
i.
15
2.5.4.
Tải
lịch
sử
và
tải
gia
tăng
cho
bảng
sự
kiện
Khóa
c
ủ
a
b
ả
ng
s
ự
ki
ệ
n
(b
ả
ng
fact)
là
s
ự
t
ả
i
k
ế
t
h
ợ
p
các
khóa
c
ủ
a
b
ả
ng
chi
ề
u.
Do
nguyên
nhân
này,
các
b
ả
n
chi
cho
chi
ề
u
d
ữ
li
ệu đượ
c
t
ải trước tiên. Sau đó, trướ
c
khi
t
ả
i
d
ữ
li
ệ
u
cho
các
b
ả
ng
s
ự
ki
ệ
n,
ta
ph
ả
i
t
ạ
o
khóa
k
ế
t
n
ố
i
cho
các
b
ả
ng
s
ự
ki
ệ
n
t
ới các khóa
tương
ứ
ng
trong
b
ả
ng
chi
ề
u.
CHƯƠNG
3.
XÂY
DỰNG
MODULE
TRÍCH
XUẤT
DỮ
LIỆU
TRONG
ETL
3.1.
Yêu
cầu
bài
toán
3.1.
1
Mục
tiêu
của
bài
toán
M
ộ
t
s
ố
yêu
c
ầu đố
i
v
ớ
i
ứ
ng
d
ụ
ng:
-
Đả
m
b
ảo tính đúng đắ
n
vè
m
ặ
t
s
ố
li
ệ
u
so
v
ớ
i
h
ệ
th
ố
ng
d
ữ
li
ệ
u
ngu
ồ
n,
tuân
th
ủ
các
lu
ậ
t
trong
vi
ệ
c
trích
rút
d
ữ
li
ệ
u.
-
Ứ
ng
d
ụ
ng
ph
ải đả
m
b
ả
o
tính
m
ề
m
d
ẻo và linh động đố
i
v
ớ
i
các
ngu
ồ
n
d
ữ
li
ệ
u
khác
nhau.
-
Cho
phép
theo
dõi
và
c
ả
nh
báo
v
ề các thay đổ
i
trong
h
ệ
th
ố
ng
d
ữ
li
ệ
u
ngu
ồn cũng
như vấn đề
x
ả
y
ra
trong
quá
trình
khai
thác.
3.1
.2.
Phạm
vi
nguồn
dữ
liệu
Hình
3.1
Mô
hình
h
ệ
th
ố
ng
d
ữ
li
ệ
u
16
-
D
ữ
li
ệ
u
tiêu
th
ụ
cu
ộ
c
g
ọ
i
và
SMS
-
D
ữ
li
ệ
u
tiêu
th
ụ
Data
(
3G+GPRS)
-
D
ữ
li
ệ
u
CDR
-
D
ữ
li
ệ
u
LACCELL
3.2
Phân
tích
yêu
cầu
bài
toán
3.2.1.
Kiến
trúc
ứng
dụng
Hình
3.2.
Ki
ế
n
trúc
ứ
ng
d
ụ
ng
V
ớ
i
yêu
c
ầ
u
cho
phép
m
ở
r
ộng để đưa dữ
li
ệ
u
t
ừ
các
ngu
ồ
n
khác
nhau
vào
kho
d
ữ
li
ệ
u
h
ệ
th
ố
ng
trích
xu
ấ
t
d
ữ
li
ệu đượ
c
thi
ế
t
k
ế để
vi
ệ
c
m
ở
r
ộ
ng
l
thu
ậ
n
ti
ệ
n
nh
ấ
t.
Ở đây các phương thứ
c
k
ế
t
n
ố
i
bao
g
ồ
m
-
K
ế
t
n
ố
i
d
ữ
li
ệ
u
t
ừ
h
ệ
th
ố
ng
ngu
ồ
n
qua
FTP,
các
t
ệp có đị
nh
d
ạ
ng
Excel
và
FoxPro.
-
K
ế
t
n
ố
i
v
ớ
i
d
ữ
li
ệ
u
Oracle
qua
k
ế
t
n
ối cơ sở
d
ữ
li
ệ
u
(ODBC,
OCI).
17
3.2.2.
Dữ
liệu
đích
Mô
hình
kho
d
ữ
li
ệu
chuyên
đề
DATA_CALL
Hình
3.3.
Kho
d
ữ
li
ệu
chuyên
đề
DATA_CALL
Chi
ề
u
d
ữ
li
ệ
u
LAC_CELL_DIM:
Chi
ề
u
d
ữ
li
ệ
u
thông
tin
v
ề
v
ị
trí
c
ủ
a
các
cell
BTS
Chi
ề
u
d
ữ
li
ệ
u
CALL_TYPE_DIM:
Chi
ề
u
d
ữ
li
ệ
u
thông
tin
v
ề
ki
ể
u
Chi
ề
u
d
ữ
li
ệ
u
OWNER_DIM:
Chi
ề
u
d
ữ
li
ệ
u
thông
tin
v
ề
nhà
m
ạ
ng
Chi
ề
u
d
ữ
li
ệ
u
PROVINCE_DIM:
Chi
ề
u
d
ữ
li
ệ
u
thông
tin
v
ề
t
ỉ
nh
thành
Chi
ề
u
d
ữ
li
ệ
u
ACTIVITY_TYPE_DIM:
Chi
ề
u
d
ữ
li
ệ
u
thông
tin
ki
ể
u
giao
d
ị
ch
Chi
ề
u
d
ữ
li
ệ
u
TIME_CALENDAR_DIM:
Chi
ề
u
d
ữ
li
ệ
u
th
ờ
i
gian
Mô
hình
kho
d
ữ
li
ệu
chuyên
đề
DATA_MTA
Mô
hình
kho
d
ữ
li
ệu
chuyên
đề
CDR
18
3.2.3.
Nguồn
dữ
liệu
3.2.2.1.
D
ữ
li
ệ
u
t
ừ
h
ệ
th
ố
ng
tr
ả trướ
c
Ngu
ồ
n
d
ữ
li
ệ
u:
D
ữ
li
ệu được lưu trữ
trong
b
ả
ng
d
ữ
li
ệ
u
DATA_CALL_HISTORY,
DATA_MTA
c
ủ
a
h
ệ
th
ống cơ sở
d
ữ
li
ệ
u
c
ủ
a
Vinaphone
s
ử
d
ụ
ng
h
ệ
qu
ả
n
tr
ị cơ sở
d
ữ
li
ệ
u
ORACLE.
T
ầ
n
xu
ấ
t
trích
xu
ấ
t:
Hàng
ngày.
C
ử
a
s
ổ
th
ờ
i
gian:
th
ờ
i
gian
2h-4h
sáng.
Phương
pháp
trích
xuấ
t:
Do
các
b
ả
n
ghi
trong
d
ữ
li
ệ
u
g
ắ
n
li
ề
n
v
ớ
i
th
ời gian như vậy đây
là
ki
ể
u
trích
xu
ất đị
nh
k
ỳ
.
N
ắ
m
b
ắt
thay
đổ
i
d
ữ
li
ệ
u:
Ở đây ta sử
d
ụng phương pháp nắ
m
b
ắ
t
d
ữ
li
ệ
u
ch
ậ
m
s
ử
d
ụ
ng
ngày
tháng
và
nhãn
th
ờ
i
gian.
Các
lu
ậ
t
trích
xu
ấ
t
d
ữ
li
ệ
u:
*)
Ngu
ồ
n
d
ữ
li
ệ
u
DATA_CALL_HISTORY
-
Ch
ỉ
l
ấ
y
d
ữ
li
ệ
u
thu
ộ
c
d
ạ
ng
tho
ạ
i
hay
SMS
-
Các
b
ả
n
ghi
d
ữ
li
ệ
u
l
ấ
y
v
ề
ph
ả
i
có
thông
tin
v
ề
d
ữ
li
ệ
u
trên
các
lo
ạ
i
tài
kho
ả
n
khác
r
ỗ
ng.
*)
Ngu
ồ
n
d
ữ
li
ệ
u
DATA_MTA
-
Các
b
ả
n
ghi
d
ữ
li
ệ
u
l
ấ
y
v
ề
ph
ả
i
có
thông
tin
v
ề
d
ữ
li
ệ
u
trên
các
lo
ạ
i
tài
kho
ả
n
khác
r
ỗ
ng.
Không
l
ấ
y
các
d
ữ
li
ệu có trườ
ng
LOGIN_NAME
=
“CUONGNC”
d
ữ
li
ệ
u
tr
ừ
ti
ề
n
t
ừ
các
h
ệ
th
ố
ng
khác.
DataCallMapping
19
Mô
hình
hóa
ánh
x
ạ
gi
ữ
a
ngu
ồn
và
đích
<<Attribute>>
DATA_CALL_HISTORY
.SUSCRIBER_ID
<<Attribute>>
DATA_CALL_HISTORY
.START_CA LL_DATE_
TIME
<<Attribute>>
DATA_CALL_HISTORY
.END_CA LL_DATE_TI
ME
<<Ma p>>
<<Ma p>>
<<Attribute>>
SUSCRIBER_ID
<<Attribute>>
START_TIME
<<Attribute>>
END_TIME
DATA_CALL_HISTORY
(OLTP)
<<Attribute>>
DATA_CALL_HISTORY
.
AC TI VITY _ T YP E
<<Ma p>>
<<Attribute>>
ACTIVITY_TYPE
<<Attribute>>
DATA_CALL_HISTORY
.CALLED _NUMBER
<<Attribute>>
DATA_CALL_HISTORY
.CELL_ID
<<Ma p>>
<<Ma p>>
<<Attribute>>
CALLED_NUMBER
<<Attribute>>
CELL_ID
DATA_CALL
<<Ma p>>
<<Attribute>>
DATA_CALL_HISTORY
.
BA LA NC E S_INF O
<<Attribute>>
LAC_ID
Lọc:
Chỉ
lấy
các
bản
ghi
thuộc
loại
Voice
hoặc
SMS
<<Ma p>>
<<Ma p>>
<<Ma p>>
<<Ma p>>
<<Attribute>>
A1_S
<<Attribute>>
A2_S
<<Attribute>>
A4_S
<<Attribute>>
A7_S
Lọc:
Chỉ
lấy
bản
ghi
có
A1_S+A2_S+A4 _S+A7 _S<>0
(Có
tiêu
thụ
trên
các
TKC,
TKK M,TKKM1,TKKM2)
Hình
3.4
Mô
hình
ánh
x
ạ
d
ữ
li
ệ
u
DATA_CALL_HISTORY
3.2.2.2.
Ngu
ồ
n
d
ữ
li
ệ
u
t
ừ
h
ệ
th
ống tính cướ
c
3.2.2.3.
Trích
xu
ấ
t
d
ữ
li
ệ
u
Lac-cell.
20
3.3.
Mô
hình
hóa
module
trích
xuất
dữ
liệu
với
UML
Xây dựng các biểu đồ người sử dụng và
biểu đồ tuần tự cho modul trích xuất dữ liệu
DS: Data Source W:Wrapper M:Monitor S:Source Identifier I: Integrator DSA: Data Staging Area
1: Get Connection W()
2: Extract Data W()
3: Get Data()
4: Install Data()
5: Get changes()
6: Get Connection M()
7: Check Data()
8: Get Data M()
9: Inform Integrator M()
10: Update data()
11: Identify new source()
12: Assign components()
13:Inform Integrator()
Hình
3.5
.
Sơ
đồ
tu
ầ
n
t
ự
c
ủ
a
module
trích
xu
ấ
t
d
ữ
li
ệ
u
21
3.4.
Cài
đặt
thử
nghiệm
module
trích
xuất
dữ
liệu
3.4.1.
Xây
dựng
ứng
dụng
3
.4.2.Cài
đặt
và
thực
thi
ứng
dụng
3.4.2.1.
C
ấ
u
hình
ứ
ng
d
ụ
ng
<translation>
<source
url=“…”,
etc
>
<column
name=“…”>
[<rule
language=“…”>
</rule>]
</column>
[<column
name=“…”>[<rule></rule>]</column>]
</source>
<target
url=“…”,
etc.>
<column
name=“…”,
etc.>[<rule></rule>]</column>
[<column
name=“…”,
etc.>[<rule></rule>]</column>]
</target>
</
translation
>
3.4.2.2.
K
ế
t
qu
ả cài đặ
t
v
ớ
i
d
ữ
li
ệ
u
th
ử
nghi
ệ
m
Hình
3.6.
Giao
di
ệ
n
module
trích
xu
ấ
t
d
ữ
li
ệ
u
22
-
Giao
di
ệ
n
chính
-
Ch
ức năng cấ
u
hình
tham
s
ố
ánh
x
ạ
d
ữ
li
ệ
u
-
C
ấ
u
hình
tham
s
ố đặ
t
l
ị
ch
trích
xu
ấ
t
-
K
ế
t
qu
ả
th
ử
nghi
ệ
m
trích
xu
ấ
t
d
ữ
li
ệ
u
CALL_HISTORY
-
K
ế
t
qu
ả
th
ử
nghi
ệ
m
trích
xu
ấ
t
d
ữ
li
ệ
u
CDR
-
K
ế
t
qu
ả
th
ử
nghi
ệ
m
trích
xu
ấ
t
d
ữ
li
ệ
u
MTA
3.
5.
Kết
luận
chương
Trong chương ba họ
c
viên
đã
thi
ế
t
k
ế
mô
hình
tri
ể
n
khai
h
ệ
th
ố
ng
th
ử
nghi
ệ
m,
xây
d
ự
ng
thi
ế
t
k
ế
module
trích
xu
ấ
t
b
ằ
ng
vi
ệ
c
áp
các
lý
thuy
ế
t
v
ề
trích
xu
ấ
t
d
ữ
li
ệ
u
ở chương hai
vào trườ
ng
h
ợ
p
d
ữ
li
ệ
u
c
ụ
th
ể
.
Bên
c
ạnh đó cũng
ch
ỉ
ra
m
ộ
t
s
ố
h
ạ
n
ch
ế
trong
vi
ệ
c
x
ử
lý
m
ộ
t
s
ố
lo
ạ
i
thông
tin
c
ụ
th
ể
v
ớ
i
m
ộ
t
s
ố
h
ạ
n
ch
ế
các
lo
ạ
i
t
ổ
ch
ứ
c
d
ữ
li
ệu đầ
u
vào.
T
ừ
vi
ệ
c
phân
tích
các
h
ạ
n
ch
ế đó, họ
c
viên đề
xu
ấ
t,
phân
tích
thi
ế
t
k
ế
và
xây
d
ự
ng
phát
tri
ển chương trình vớ
i
các
lo
ạ
i
s
ố
li
ệ
u
khác
và linh động hơn vớ
i
các
t
ổ
ch
ứ
c
d
ữ
li
ệu đầ
u
vào,
ti
ế
p
t
ụ
c
phát
tri
ể
n
các
module
chuy
ển đổ
i
và
t
ả
i
d
ữ
li
ệu để
có
th
ể
t
ạ
o
ra
m
ộ
t
b
ộ
công
c
ụ
ETL
hoàn
ch
ỉ
nh.
23
KẾT
LUẬN
Lu
ậ
n
vă
n
nghiên
c
ứ
u
“
NGHIÊN
C
Ứ
U
QUY
TRÌNH
ETL
TRONG
KHO
D
Ữ
LI
Ệ
U
Ứ
NG
D
Ụ
NG
VÀO
H
Ệ
TH
Ố
NG
D
Ữ
LI
Ệ
U
KINH
DOANH
TRONG
DOANH
NGHI
Ệ
P
VI
Ễ
N
THÔNG
”
đ
ã
đượ
c
hoàn
thành.
Phân
tích
công
ngh
ệ
,
c
ấ
u
trúc,
ki
ế
n
trúc,
và
công
c
ụ
để
xây
d
ự
ng
công
c
ụ
ETL
ph
ụ
c
v
ụ
cho
vi
ệ
c
xây
d
ự
ng
kho
d
ữ
li
ệ
u.
Tìm
hi
ể
u
các
ph
ươ
ng
pháp,
k
ỹ
thu
ậ
t
trích
xu
ấ
t,
chuy
ển
đổ
i,
t
ả
i
áp
d
ụ
ng
v
ớ
i
t
ừ
ng
lo
ạ
i
d
ữ
li
ệ
u,
v
ới các trườ
ng
h
ợ
p
c
ụ
th
ể để
mang
l
ạ
i
hi
ệ
u
qu
ả
cao
nh
ấ
t
cho
h
ệ
th
ố
ng
ETL.
Th
ự
c
hi
ệ
n
xây
d
ự
ng
kho
d
ữ
li
ệ
u
th
ử
nghi
ệ
m
t
ừ
h
ệ
th
ố
ng
ngu
ồ
n
d
ữ
li
ệ
u
kinh
c
ủ
a
Vinaphone.
Tuy
nhiên
do
th
ờ
i
gian
th
ự
c
hi
ệ
n
lu
ậ
n
v
ă
n
có
gi
ớ
i
h
ạ
n
nên
lu
ậ
n
v
ă
n
ch
ỉ
d
ừ
ng
l
ạ
i
v
ớ
i
vi
ệ
c
xây
d
ự
ng
module
trích
xu
ấ
t
áp
d
ụ
ng
cho
m
ộ
t
s
ố
ngu
ồ
n
d
ữ
li
ệ
u
chính
c
ủa đơn vị
K
ế
t
qu
ả
thu
đượ
c
r
ấ
t
kh
ả
quan,
h
ệ
th
ố
ng
cho
phép
trích
xu
ấ
t
d
ữ
li
ệ
u
t
ừ
các
ngu
ồ
n
d
ữ
li
ệ
u
v
ớ
i
khuôn
d
ạng khác nhau như Oracle, FoxPro, Excel
.
K
ế
t
qu
ả
này
cho
th
ấ
y
có
th
ể
áp
d
ụ
ng
h
ệ
th
ố
ng
cho
h
ệ
th
ố
ng
th
ự
c
t
ế đang trong quá trình
tri
ể
n
khai.
Trong
tương
tai
học
viên
đề
xu
ấ
t
phát
tri
ể
n
ti
ế
p
các
module
chuy
ển
đổ
i
và
module
t
ả
i
d
ữ
li
ệu để
t
ạ
o
ra
môt
h
ệ
th
ố
ng
ETL
hoàn
ch
ỉ
nh
ph
ụ
c
v
ụ
cho
vi
ệ
c
xây
d
ự
ng
kho
d
ữ
li
ệ
u
không
ch
ỉ
trong
lĩnh
vự
c
vi
ễ
n
thông
mà
trong
nhi
ều
lĩnh
vự
c
khác nhau.
Qua
đ
ó,
có
th
ể
kh
ẳ
ng
đị
nh
xây
d
ự
ng
h
ệ
th
ố
ng
ETL
cho
vi
ệ
c
xây
d
ự
ng
h
ệ
th
ố
ng
d
ữ
li
ệ
u
kinh
doanh
c
ủ
a
doanh
nghi
ệ
p
là
h
ế
t
s
ứ
c
c
ầ
n
thi
ết đố
i
v
ớ
i
các
doanh
nghi
ệ
p.
Vi
ệ
c
hi
ể
u
đượ
c
t
ầ
m
quan
tr
ọng
và
phương
pháp
xây
dự
ng
h
ệ
th
ống
ETL
đóng
vai
trò
quyết
đị
nh
trong
vi
ệ
c
xây
d
ự
ng
cho
h
ệ
th
ố
ng
kho
d
ữ
li
ệ
u
nói
riêng
và
các
h
ệ
th
ố
ng
d
ự
a
trên
n
ề
n
t
ả
ng
kho
d
ữ
li
ệ
u
nói
chung.
24
TÀI
LI
ỆU
THAM
KH
ẢO
[1]
Arktos : towards the modeling, design, control and execution of ETL processes, Panos
Vassiliadis*,
Zografoula
Vagena,
Spiros
Skiadopoulos,
Nikos
Karayannidis,
Timos
Sellis,
2001.
[2]
A
UML
Based
Approach
for
Modeling
ETL
Processes
in
Data
Warehouses,
Juan
Trujillo and Sergio Luj´n-Moraa, Dept. de Lenguajes y Sistemas Inform´ticosa Universidad
de Alicante (Spain).
[3]
Building the Data Warehouse, W.H.Inmon, Copyright © 2005
John Wiley & Sons, Inc.
[4]
Conceptual
Modeling
for
ETL
Processes,
Panos
Vassiliadis,
Alkis
Simitsis,
Spiros
Skiadopoulos.
[5] Data Warehousing Fundamentals: A Comprehensive Guide for IT Professionals. Paulraj
Ponniah, Copyright © 2001 John Wiley & Sons, Inc.
[6]
Data
Cleaning:
Problems
and
Current
Approaches,
Erhard
Rahm
*,
Hong
Hai
Do,
University of Leipzig, Germany.
[7]
The
Data
Warehouse
ETL
Toolkit
Practical
Techniques
for
Extracting,
Cleaning,
Conforming, and Delivering Data,
Ralph Kimball, Joe Caserta.
[8]
Hierarchical
Approach
to
Data
Extraction
using
UML
2.0,
Payal
Pahwa1,
Geetika
Chaudhary, Khyati Jain, Neha Sharma and Ruchira Gupta.